spring和hibernate整合时,SessionFactory底层的DataSource可以使用spring的ioc注入,然后你在自己的程序中注入SessionFactory
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"
destroy-method="close">
<!--将数据源注入 LocalSessionFactoryBean(建立hibernate中的sessionfactory的bean工厂,fw里用的是AnnotationSessionFactoryBean) -->
<property name="dataSource" ref="dataSource" />
........
</bean>
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/helloworld" />
<property name="username" value="root" />
<property name="password" value="root" />
</bean>
使用HibernateTemplate
public class UserDao implements IUserDao {
HibernateTemplate hibernateTemplate;
public UserDao() {
}
public UserDao(SessionFactory sessionFactory) {
this.setSessionFactory(sessionFactory);
}
public void setSessionFactory(SessionFactory sessionFactory) {
this.hibernateTemplate = new HibernateTemplate(sessionFactory);
}
public void insert(User user) {
hibernateTemplate.save(user);
}
public User find(Integer id) {
User user = (User)hibernateTemplate.get(User.class,id);
return user;
}
}
使用HibernateDaoSupport
使用HibernateDaoSupport可以简化你管理SessionFactory、HibernateTemplate的工作,因为在HibernateDaoSupport中帮你管理了 SessionFactory、HibernateTemplate ,你只要继承它就ok了
HibernateDaoSupport源代码:
/**
* Set the Hibernate SessionFactory to be used by this DAO.
* Will automatically create a HibernateTemplate for the given SessionFactory.
*/
public final void setSessionFactory(SessionFactory sessionFactory) {
this.hibernateTemplate = createHibernateTemplate(sessionFactory);
}
protected HibernateTemplate createHibernateTemplate(SessionFactory sessionFactory) {
return new HibernateTemplate(sessionFactory);
}
Hibernate提供自己的事务管理实现 ,但和spring整合时建议将事务管理交spring来负责,spring提供了:编程式事务管理、声明式事务管理。
Spring的声明式事务管理是通过Spring AOP实现的,因为事务方面的代码与Spring绑定并以一种样板式风格使用,不过尽管如此,你一般并不需要理解AOP概念就可以有效地使用Spirng的声明式事务管理。
注:具体参考一下《Spring Framework 开发参考手册》声明式事务管理
Spring2.0及以后的版本中声明式事务的配置与之前的版本有相当大的不同。主要差异在于不再需要配置TransactionProxyFactoryBean了。
Spring2.0之前的旧版本风格的配置仍然是有效的;你可以简单地认为新的<tx:tags/>替你定义了TransactionProxyFactoryBean。
分享到:
相关推荐
本书是《轻量级J2EE企业应用实战》的第二版,同时还融合了《整合Struts+Hibernate+Spring应用开发详解》理论部分。实际上,本书凝结了前两本书的精华部分。 本书介绍了Java EE领域的三个开源框架:Struts 2、Spring...
适合初学者进行ssh的初步整合 开发工具:myeclipse8.5 版本信息:struts 1.2 hibernate3.3 spring 3.0
本书所介绍的内容是作者多年J2EE 开发经验的总结,内容涉及Struts 、Hibernate 和Spring 三个开源 框架,还介绍了Tomcat 和Jetty 两个开源Web 服务器的详细用法,以及J2EE 应用的几种常用架构。 本书不仅是一本J2EE ...
輕量級 J2EE 企業應用實戰:Struts+Spring+Hibernate整合開發 本书所介绍的内容是作者多年J2EE 开发经验的总结,内容涉及Struts 、Hibernate 和Spring 三个开源 框架,还介绍了Tomcat 和Jetty 两个开源Web ...
輕量級 J2EE 企業應用實戰:Struts+Spring+Hibernate整合開發 本书所介绍的内容是作者多年J2EE 开发经验的总结,内容涉及Struts 、Hibernate 和Spring 三个开源 框架,还介绍了Tomcat 和Jetty 两个开源Web ...
輕量級 J2EE 企業應用實戰:Struts+Spring+Hibernate整合開發 <br>本书所介绍的内容是作者多年J2EE 开发经验的总结,内容涉及Struts 、Hibernate 和Spring 三个开源 框架,还介绍了Tomcat 和Jetty 两个开源Web...
本书所介绍的内容是作者多年J2EE开发经验的总结,内容涉及Struts、 Hibernate和Spring三个开源框架,还介绍了Tomcat和Jetty两个开源Web服务器的详细用法,以及J2EE应用的几种常用架构。 本书不仅是一本J2EE入门图书...
struts2.14+hibernate3.3.2+spring2.5.6初步整合 浪曦视频里的
本书所介绍的内容是作者多年J2EE开发经验的总结,内容涉及三个开源框架:Struts、Hibernate和Spring,还介绍了Tomcat和Jetty两个开源Web服务器的详细用法,以及J2EE应用的几种常用架构。 本书不仅仅是一本J2EE...
本书所介绍的内容是作者多年J2EE开发经验的总结,内容涉及三个开源框架:Struts、Hibernate和Spring,还介绍了Tomcat和Jetty两个开源Web服务器的详细用法,以及J2EE应用的几种常用架构。 本书不仅仅是一本J2EE...
本书所介绍的内容是作者多年J2EE开发经验的总结,内容涉及三个开源框架:Struts、Hibernate和Spring,还介绍了Tomcat和Jetty两个开源Web服务器的详细用法,以及J2EE应用的几种常用架构。 本书不仅仅是一本J2EE...
本书所介绍的内容是作者多年J2EE开发经验的总结,内容涉及三个开源框架:Struts、Hibernate和Spring,还介绍了Tomcat和Jetty两个开源Web服务器的详细用法,以及J2EE应用的几种常用架构。 本书不仅仅是一本J2EE...
本书所介绍的内容是作者多年J2EE开发经验的总结,内容涉及三个开源框架:Struts、Hibernate和Spring,还介绍了Tomcat和Jetty两个开源Web服务器的详细用法,以及J2EE应用的几种常用架构。 本书不仅仅是一本J2EE...
本书所介绍的内容是作者多年J2EE 开发经验的总结,内容涉及Struts 、Hibernate 和Spring 三个开源 框架,还介绍了Tomcat 和Jetty 两个开源Web 服务器的详细用法,以及J2EE 应用的几种常用架构。 本书不仅是一...
本书所介绍的内容是作者多年J2EE 开发经验的总结,内容涉及Struts 、Hibernate 和Spring 三个开源 框架,还介绍了Tomcat 和Jetty 两个开源Web 服务器的详细用法,以及J2EE 应用的几种常用架构。 本书不仅是一...
本书所介绍的内容是作者多年J2EE 开发经验的总结,内容涉及Struts 、Hibernate 和Spring 三个开源 框架,还介绍了Tomcat 和Jetty 两个开源Web 服务器的详细用法,以及J2EE 应用的几种常用架构。 本书不仅是一...
本书适用于有较好的Java 编程基础,有初步的J2EE 编程基础的读者。本书既可以作为J2EE 初学者的入门书籍,也可作为J2EE 应用开发者的提高指导。
没事了做一个demo 玩玩想学习的可以看一下。这是个初步的整合。里面什么功能都没有。有一个登录和filter 本人是做BI的 以后会把BI整合进去,同时也把权限也整合进去。
此项目包括struts+hibernate+spring初步整合的全部内容,下载后使用winRAR解压,导入项目即可使用, 包括struts+hibernate+spring所需要的所有jar包 所有配置,已经通过运行,希望能帮到初学struts+hibernate+spring...
ssh整合 struts 2.3.20 hibernate 4.2.17 spring 3.2.4整合所需jar包