JPABookDAOImpl.java
package ejava.examples.daoex.dao;
import java.util.List;
import javax.persistence.EntityManager;
import ejava.examples.daoex.bo.Book;
/**
* This class provides a simple DAO implementation based on JPA
*/
public class JPABookDAOImpl implements BookDAO {
private EntityManager em;
public void setEntityManager(EntityManager em) {
this.em = em;
}
@Override
public Book create(Book book) {
em.persist(book);
return book;
}
@Override
public Book update(Book book) {
return em.merge(book);
}
@Override
public Book get(long id) {
return em.find(Book.class, id);
}
@Override
public void remove(Book book) {
em.remove(book);
}
@Override
public List<Book> findAll(int offset, int limit) {
return em.createQuery("select b from Book b", Book.class)
.setFirstResult(offset)
.setMaxResults(limit)
.getResultList();
}
}