Reputation: 55
Write using generics the below code.
Session session = HibernateUtil.getHibernateSession();
CriteriaBuilder cb = session.getCriteriaBuilder();
CriteriaQuery<Item> cr = cb.createQuery(Item.class);
Root<Item> root = cr.from(Item.class);
cr.select(root);
Query<Item> query = session.createQuery(cr);
List<Item> results = query.getResultList();
Upvotes: 2
Views: 219
Reputation: 502
basic solution:
public <T> List<T> findAll(Class<T> clazz){
Session session = HibernateUtil.getHibernateSession();
CriteriaBuilder cb = session.getCriteriaBuilder();
CriteriaQuery<T> cr = cb.createQuery(clazz);
Root<T> root = cr.from(clazz);
cr.select(root);
Query<T> query = session.createQuery(cr);
List<T> results = query.getResultList();
return results;
}
and you can call the function as:
List<Item> items= findAll(Item.class);
Upvotes: 2