HTML and CSS Reference
In-Depth Information
@Override
public void removeBook(Integer bookID) throws BookNotFound {
Book book = em.find(Book.class, bookID);
if (book == null) {
throw new BookNotFound();
}
em.remove(book);
em.flush();
}
@Override
public byte[] getBookContent(Integer bookID) throws BookNotFound {
byte[] content = null;
try {
content = (byte[]) em.createQuery("Select book.content from Book book where book.id=:id")
.setParameter("id", bookID)
.getSingleResult();
} catch (NoResultException exception) {
throw new BookNotFound(exception.getMessage());
}
return content;
}
@Override
public List<Book> getAllBooks(Book searchableBook) {
List<Book> books = new ArrayList<Book>();
String searchableTitle = searchableBook.getTitle();
Query query = em.createQuery("select book.id, book.isbn, book.title, "
+ "book.author, book.publisher, book.lang from Book book where "
+ "book.title like :title");
query.setParameter("title", "%" + searchableTitle + "%");
List<Object[]> bookList = (List<Object[]>) query.getResultList();
if (bookList == null) {
return books;
}
for (Object[] bookInfo : bookList) {
Book book = new Book(
(Integer) bookInfo[0],
(String) bookInfo[1],
(String) bookInfo[2],
(String) bookInfo[3],
(String) bookInfo[4],
Search WWH ::




Custom Search