getHibernateTemplate()
来源:互联网 发布:随意画线软件 编辑:程序博客网 时间:2024/04/29 21:06
前提条件:你的类必须继承HibernateDaoSupport
一:
回调函数:
public List getList(){
StringBuffer sb = new StringBuffer();
Query query = s.createSQLQuery(sb.toString());//<STRONG>执行普通sql</STRONG>
Query query = s.createQuery(sb.toString());// <STRONG>执行hql </STRONG>
List list = query.list();
return list ;
}
采用这种做法的好处是:不用关心事务。session的创建和销毁,一切都在程序内部完成。看看名字doInHibernate就知道好处了。不好的是程序看起来比较乱!个人认为。
二:
getHibernateTemplate().find():
List list = getHibernateTemplate().find(String sql ):
这种的前提是sql必须是hql ,原始sql 不能执行。
三:
自己获取session处理。
获取session的两种方式:this.getSession();和this.getHibernateTemplate().getSessionFactory().openSession();
获取session以后再createQuery操作就一样了。但是这种做法,是需要自己去手动关闭session的。所以你需要配置openSessioninview,个人认为不推荐使用!
其他:
getHibernateTemplate.delete(Object);
getHibernateTemplate.save(Object);
getHibernateTemplate.update(Object);
总结:推荐使用回调函数。
HibernateTemplate提供非常多的常用方法来完成基本的操作,比如通常的增加、删除、修改、查询等操作,Spring 2.0更增加对命名SQL查询的支持,也增加对分页的支持。大部分情况下,使用Hibernate的常规用法,就可完成大多数DAO对象的CRUD操作。下面是HibernateTemplate的常用方法简介:
q
q
q
q
q
q
q
q
q
下面是一个完整DAO类的源代码:
public class PersonDAOHibernate implements PersonDAO
{
private static Log log = LogFactory.getLog(NewsDAOHibernate.class);
private SessionFactory sessionFactory;
//以私有变量的方式保存HibernateTemplate
private HibernateTemplate hibernateTemplate = null;
{
public HIbernateTemplate
{
}
}
- getHibernateTemplate()
- getHibernateTemplate
- getHibernateTemplate
- getHibernateTemplate()
- getHibernateTemplate
- getHibernateTemplate()
- getHibernateTemplate
- getHibernateTemplate()
- getHibernateTemplate()
- getHibernateTemplate
- getHibernateTemplate()
- getHibernateTemplate()使用方法
- getHibernateTemplate()查询
- getHibernateTemplate()详解
- getHibernateTemplate方法
- getHibernateTemplate().merge
- criteria + getHibernateTemplate()
- getHibernateTemplate用法
- oracle 快速删除表中的所有记录
- 第2周-项目5-数组作数据成员-工资类(文件读取)
- xstream实现xml与Object之间的自如转换
- Implement strStr()
- 新手对于iPhone开发环境等入门问题解答汇总
- getHibernateTemplate()
- Angularjs 控制器
- SGU - 169 - Numbers (找规律)
- 第2周-项目5-数组作数据成员-工资类(多文件组织)
- 请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理解决方案 服务器配置错误
- 编译脚本
- nyoj 32 组合数(DFS)
- SNMP协议详解
- CSS 实现表格中文字不换行,超长部分显示省略号