前提是该Dao类已经已经继承了org.springframework.orm.hibernate5.support.HibernateDaoSupport,并且在整个项目中已经配置好了事务,或者是手动管理事务
本次采用的是将事务交给Spring管理
try {
// 通过模板获取session
Session session = this.getHibernateTemplate().getSessionFactory().openSession();
// 获取
SQLQuery query = session.createSQLQuery("select nextval_safe(?) as current"); query.setString(0,"DOCID");
List<Integer> list = query.list(); if(list != null && list.size() >= 0){
return list.get(0)+"";
} } catch (HibernateException e) {
e.printStackTrace();
}
关于openSession()与getCurrentSession()区别,当时参考的博客为:
http://www.cnblogs.com/Laupaul/archive/2012/02/09/2344414.html