通过代码实例跟我学spring框架从入门到精通——spring框架与hibernate框架相互整合的相关技术和应用实例eclipse版本内容摘要:
props /property property name=mappingResources list value/value /list /property /bean bean id=oneDAOInterfaceImpl_HibernateDAO class= property name=sessionFactory ref bean=sessionFactory / /property /bean /beans Spring Framework最得以出名的是与 Hibernate的无缝链接,虽然 Spring 对 Hibernate提供了 90%以上的封装, 使我们不必去关心 Session 的建立,关闭,以及事务使我们能够专心的关注业务逻辑。 但是一些特殊情况,如有时需要 Query 以及 Criteria 对象,分页等, Spring 不能给我们提供支持,总不能每次都在我们的 DAO 上写个 HibernateCallBackup()吧。 Spring 的作用不是把 Hibernate 再封装一层,而是让我们接触不到 Hibernate 的 API,并且帮助我们管理好 Session 和 Transaction。 其中的 文件的内容为: ?xml version=? !DOCTYPE hibernatemapping PUBLIC //Hibernate/Hibernate Mapping DTD hibernatemapping class name= table=UserInfo 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 杨教授工作室,版权所有,盗版必究 , 8/19 页 id name=id type=string unsavedvalue=null column name=id sqltype=char(50) notnull=true/ generator class=/ /id property name=userName / property name=userPassWord / /class /hibernatemapping ( 2)方式二 使用 Hibernate 中的 ,此时的 Bean 的 *.xml 配置内容为下面所示 bean id=sessionFactory class= property name=configLocation valueWEBINF/classes//value /property /bean 此时可以由 Hibernate 实现数据库连接、并保留 Hibernate 的功能实现的独立性(在DAO中继续采用 Hibernate 自己的 Session 对象),但又能够简化对 SessionFactory 的管理。 实现相互整合时在 Spring 的 IoC 的 *.xml 配置文件中的主要配置项目 ( 1)为 sessionFactory 配置一个 DataSource ( 2)配置一个 hibernateProperties 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 杨教授工作室,版权所有,盗版必究 , 9/19 页 sessionFactory 用的。 利用它可以把所有要给 Hibernate 的设置统一放在一起。 ( 3)配置 sessionFactory( )组件 并 在 其 属 性 dataSource 中 引 用 我 们 前 面 所 定 义 的 DataSource , 在 属 性hibernateProperties 中定义我 们的 Hibernate 的各个属性项目,这样, sessionFactory就知道到哪去取连接、怎么设置 Hibernate 的工作方式等。 然后在属性 mappingResources 中配一个 list,把所有的 . 加入进去。 ( 4)配置 transactionManager ( )这是将来给所有的service 方法做声明式事务管理用的。 只要把属性 sessionFactory 给 ref 上 就可以。 ( 5)为了简化将来 service 方法的配置,对遵循某些规则命名的 service 方法自动设置上对应的事务管理 再配一个,让它lazyinit=true, abstract=true。 把属性 transactionManager 给 ref 上,然后配置属性transactionAttributes。 ( 6)最后,应该使用 OpenSessionInView 模式来管 理 session 在 中加入 这个 filter,设置好 filtermapping, session 就会自动打开和关闭。 Spring 框架与 Hibernate 框架相互整合的 应用实例 在项目中添加一个 DAO 组件类 ( 1 )类名称为 DAOInterfaceImpl_HibernateDAO 、并且实现 接口 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 杨教授工作室,版权所有,盗版必究 , 10/19 页 ( 2) 编程 DAOInterfaceImpl_HibernateDAO 组件 类中的相关功能实现代码 package。 import。 import。 import。 import。 import。 public class DAOInterfaceImpl_HibernateDAO extends HibernateDaoSupport implements DAOInterface{ private LocalSessionFactoryBean sessionFactory。 public void setSessionFactory(LocalSessionFactoryBean sessionFactory) { = sessionFactory。 } public DAOInterfaceImpl_HibernateDAO() { } public UserInfoPO selectOneUserInfoDBData(UserInfoPO oneUserInfoPO) { 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 杨教授工作室,版权所有,盗版必究 , 11/19 页 Object userInfoPara[]={ (), () }。 String hqlSelect=from as userInfo where =? + and =?。 List returnResult=getHibernateTemplate().find(hql。通过代码实例跟我学spring框架从入门到精通——spring框架与hibernate框架相互整合的相关技术和应用实例eclipse版本
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。