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()方法就行了,很方便;

posted @ 2012-10-26 11:16  小木v587  阅读(2105)  评论(0)    收藏  举报