Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public <T> T getByCriteria(Class<T> clazz, String field, Object o) {
- Session session = sessionFactory.openSession();
- CriteriaBuilder builder = session.getCriteriaBuilder();
- CriteriaQuery<T> query = builder.createQuery(clazz);
- Root<T> root = query.from(clazz);
- T entity = session.createQuery(query.where(builder.equal(root.get(field), o)).select(root)).getSingleResult();
- session.close();
- return entity;
- }
- public <T> List<T> getAll(Class<T> clazz) {
- Session session = sessionFactory.openSession();
- CriteriaBuilder builder = session.getCriteriaBuilder();
- CriteriaQuery<T> query = builder.createQuery(clazz);
- List<T> list = session.createQuery(query.select(query.from(clazz))).getResultList();
- session.close();
- return list;
- }
- public <T> void save(T entity) {
- Session session = sessionFactory.openSession();
- session.beginTransaction();
- session.saveOrUpdate(entity);
- session.getTransaction().commit();
- session.close();
- }
- public <T> void clear(Class<T> clazz) {
- List<T> entities = getAll(clazz);
- Session session = sessionFactory.openSession();
- session.beginTransaction();
- for(T entity : entities) {
- session.delete(entity);
- }
- session.getTransaction().commit();
- session.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement