package com.util;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class BaseDao<T, PK extends Serializable> {
private static Transaction transaction;
public void save(T obj) {
Session session = HibernateUtil.getSession();
transaction = session.beginTransaction();
session.save(obj);
transaction.commit();
HibernateUtil.closeSession();
}
public void deleteByT(T obj) {
Session session = HibernateUtil.getSession();
transaction = session.beginTransaction();
session.delete(obj);
transaction.commit();
HibernateUtil.closeSession();
}
public void deleteById(T obj, String id) {
Session session = HibernateUtil.getSession();
transaction = session.beginTransaction();
session.delete(id, obj);
transaction.commit();
HibernateUtil.closeSession();
}
public List queryAll(T obj) {
Session session = HibernateUtil.getSession();
String objName = obj.getClass().getName();
Query query = session.createQuery("from " + objName);
List<T> result = query.list();
System.out.println(result);
HibernateUtil.closeSession();
return result;
}
public void update(T obj) {
Session session = HibernateUtil.getSession();
transaction = session.beginTransaction();
session.save(obj);
transaction.commit();
HibernateUtil.closeSession();
}
public Object queryTById(T obj, PK id) {
Session session = HibernateUtil.getSession();
transaction = session.beginTransaction();
Object result = session.get(obj.getClass(), id);
System.out.println(result);
transaction.commit();
HibernateUtil.closeSession();
return result;
}
public List query(String hql) {
Session session = HibernateUtil.getSession();
Query query = session.createQuery(hql);
List<T> list = query.list();
System.out.println(list);
HibernateUtil.closeSession();
return list;
}
}
hibernate的增删改查通用型接口
最新推荐文章于 2021-05-15 19:23:19 发布