hibernate 方法的封装和使用
1.定义接口ICommDao.java
public interface ICommDao { public Object findById(Class clazz,Serializable id); public List findByHql(String hql); public List findByHql(String hql,Object[] values); public List queryByPage(String hql,int beginIndex, int pageSize); public Object save(Object entity); public void update(Object entity); public void delete(Object entity); }
2.创建一个DBHelper.java类
public class DBHelper { private ICommDao commDao; public ICommDao getCommDao() { return commDao; } public void setCommDao(ICommDao commDao) { this.commDao = commDao; } }
3.实现类CommDaoImpl.java
public void delete(Object entity) { // 删除对象 this.getHibernateTemplate().delete(entity); } public List findByHql(String hql) { //查询一个集合 return this.getHibernateTemplate().find(hql); } public List findByHql(String hql, Object[] values) { // 查询多个 return this.getHibernateTemplate().find(hql,values); } public Object findById(Class clazz, Serializable id) { // 返回对象 return this.getHibernateTemplate().get(clazz, id); } public Object save(Object entity) { // 保存 return this.getHibernateTemplate().save(entity); } public void update(Object entity) { // 更新 this.getHibernateTemplate().update(entity); } @Override//分页 public List queryByPage(final String hql, final int beginIndex, final int pageSize) { // TODO Auto-generated method stub return this.getHibernateTemplate().executeFind(new HibernateCallback(){ @Override public List doInHibernate(Session session) throws HibernateException, SQLException { return session.createQuery(hql).setFirstResult(beginIndex).setMaxResults(pageSize).list(); } }); } }
hibernate 里的方法基本就这些,调用的时候
比如保存
先继承DBHelper类
然后调用 this.getCommDao().save()方法就行了,很方便;