码迷,mamicode.com
首页 > 数据库 > 详细

hibernate执行sql的三种方式

时间:2016-08-16 23:36:43      阅读:376      评论:0      收藏:0      [点我收藏+]

标签:

方式一:直接使用HibernateTemplate的find()方法,find方法支持执行hql语句

List<T> list = this.getHibernateTemplate().find(finalHql, params); 

 

方式二:获取SessionFactory,再获取Session

 

SessionFactory sf = this.getHibernateTemplate().getSessionFactory();

Session s = sf.getCurrentSession();

Query query = s.createQuery(finalHql);

query.setParameter(0, params[0]);

query.setParameter(1, params[1]);

List<T> list = query.list();

 

方式三:使用hibernateTemplate调用回调函数

List<T> list = this.getHibernateTemplate().execute(new HibernateCallback() {

public Object doInHibernate(Session session)

throws HibernateException, SQLException {

Query query = session.createQuery(finalHql);

if(params!=null && params.length>0){

for(int i=0;i<params.length;i++){

query.setParameter(i, params[i]);

}

}

return query.list();

}

});

 

hibernate执行sql的三种方式

标签:

原文地址:http://www.cnblogs.com/fuyiming/p/5778192.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!