您的位置:首页 > 编程语言 > Java开发

spring 与hibernate 的 整合 源码分析

2011-01-17 15:37 531 查看
首先使用 spring和 hibernate 的整合 要熟练 这是必须的 !本人也是刚刚看源码》不足地方!大家多提意见啊!

其实 spring和hibernate的整合就是spring-orm.jar和 hibernate3.jar这两个包中分析:

  好了 首先在 spring-orm.jar这的包中:

我们在写dao层的时候大家习惯性的 让我们的dao层继承HibernateDaoSupport 这的类。在这个类中大家发现没有其实这个类中 有SessionFactory属性和hibernateTemplate属性分别有他们的get/set方法:

public final void setSessionFactory(SessionFactory sessionFactory) {

>>>>>>>>>省略:

}



public final void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
this.hibernateTemplate = hibernateTemplate;
}

也就是说 我们可以往我们的dao中注入sessionFactory或者hibernateTemplate 其实 。

hibernateTemplate类继承了HibernateAccessor类 和实现了HibernateOperations接口,

在HibernateAccessor类中有SessionFactory的get/set方法,我个人建议大家将SessionFactory

放到hibernateTemplate中 再将其放入到HibernateDaoSupport中.(其实两者差别不大几乎没有差别只是编程的习惯问题吧!个人的认为这样让我们的更能很好的去做spring的依赖注入)。

接下来就是hibernateTemplate的工作了 。

hibernateTemplate其实就是hibernate的工作了。

在hibernate3.jar中 有一个上下文的包叫context包,这个包中的所有的接口都是上下文使用的。其中有一个CurrentSessionFactory的接口 spring就是通过这个接口和hibernate在线程上(也是就是事务的控制)整合的。

spring事务的控制……下回再说》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐