Cpt 6a BookEJB.java
package com.apress.javaee6.chapter06a;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import java.util.List;
/**
* @author Antonio Goncalves
* APress Book - Beginning Java EE 6 with Glassfish
* http://www.apress.com/
* http://www.antoniogoncalves.org
* --
*/
@Stateless
public class BookEJB implements BookEJBRemote {
// ======================================
// = Attributes =
// ======================================
@PersistenceContext(unitName = "chapter06PU")
private EntityManager em;
// ======================================
// = Public Methods =
// ======================================
public List<Book> findBooks() {
Query query = em.createNamedQuery("findAllBooks");
return query.getResultList();
}
public Book findBookById(Long id) {
return em.find(Book.class, id);
}
public Book createBook(Book book) {
em.persist(book);
return book;
}
public void deleteBook(Book book) {
em.remove(em.merge(book));
}
public Book updateBook(Book book) {
return em.merge(book);
}
}





