hibernate 方法的封装和使用

本文将介绍如何在Java应用中使用ORM框架,并通过示例演示如何将ORM框架与Hibernate集成,实现对象持久化操作,包括查询、保存、删除、更新等常见功能。通过继承DBHelper类并调用其方法,可以方便地完成对象的增删查改操作。

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

转载于:https://www.cnblogs.com/xiaomuv587/archive/2012/10/26/2740817.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值