Advertisement
Guest User

Untitled

a guest
Nov 27th, 2015
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. package org.jboss.tools.examples.DAO;
  2.  
  3. import java.util.List;
  4. import java.util.logging.Logger;
  5.  
  6. import javax.inject.Inject;
  7. import javax.persistence.EntityManager;
  8.  
  9. public abstract class DAO<T> {
  10.  
  11. @Inject
  12. private Logger log;
  13.  
  14. @Inject
  15. private EntityManager em;
  16.  
  17. protected <T> T update(T entity) {
  18. return em.merge(entity);
  19. }
  20.  
  21. protected <T> T create(T t) {
  22. return em.merge(t);
  23. }
  24.  
  25. protected <T> void delete(T t) {
  26. em.remove(t);
  27. }
  28.  
  29. protected <T> T readById(Class<T> pClass, int pId) {
  30. return em.find(pClass, pId);
  31. }
  32.  
  33. public <T> List<T> queryFind(int maxResults, Class<T> clazz, String queryName, Object... parameters) {
  34. javax.persistence.Query q = em.createNamedQuery(queryName);
  35. if (parameters != null) {
  36. for (int i = 0; i < parameters.length; i++) {
  37. q.setParameter(i + 1, parameters[i]);
  38. }
  39. }
  40. q.setMaxResults(maxResults);
  41. return (List<T>) q.getResultList();
  42. }
  43.  
  44. public <T> List<T> queryFind(Class<T> clazz, String queryName, Object... parameters) {
  45. return queryFind(Integer.MAX_VALUE, clazz, queryName, parameters);
  46. }
  47.  
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement