对应spring中数据库的访问,spring封装好了 HibernateTemplate。但有的时候还是会想用 session。
return (List)getHibernateTemplate().execute(
new HibernateCallback(){
@Override
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
// TODO Auto-generated method stub
List list=session.createQuery("from User u where u.name=").setString(0, "admin").list();
return list;
}
}
);
注:在方法doInHibernate内可以访问Session,该Session对象是绑定到该线程的Session实例,该方法内的持久层操作与不使用Spring时的持久层操作完全相同,这保证了对于复杂的持久层访问时,依然可以使用Hibernate的访问方式。