Spring的HibernateTemplate理解
首先是HibernateTemplate的定义:
public class HibernateTemplate extends HibernateAccessor implements HibernateOperations { ... }/** 插入一个Info对象 */public void insertInfo(Info info) { this.getHibernateTemplate().save(info);}/** 分页查询Info表 */public List queryInfoList(int pageSize, int startRow) { final int pageSize1 = pageSize; final int startRow1 = startRow; return this.getHibernateTemplate().executeFind(new HibernateCallback(){ public List doInHibernate(Session session) throws HibernateException, SQLException { Query query = session.createQuery(FIND_ALL_INFO); query.setFirstResult(startRow1); query.setMaxResults(pageSize1); return query.list(); } });}public Object execute(HibernateCallback action) throws DataAccessException { 先通过SessionFactory获取到Hibernate的Session对象 执行HibernateCallback的对象的doInHibernate(...)的方法 看看上面我们的“分页查询Info表”的方法 关闭Session 返回查询结果}