Spring与Hibernate整合.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Spring+Hibernate整合 Spring是一个轻量级的bean容器,它为业务对象(business objects)、DAO对象和资源对象(如:JDBC数据源或者Hibernate SessionFactorie等)提供了IoC类型的装配能力。Spring通过使用一个xml格式的配置文件,为开发者提供了一种通过定制属性文件来手动管理单例对象或工厂对象的可选择性。由于Spring将非侵入性做为一个重要的目标,因此由Spring配置管理的bean均不需要依赖Spring自身的接口和类,就可以通过它们的bean属性完成配置。从而可以被应用到任何环境中,无论你开发的是一个J2EE的web应用还是一个桌面应用甚至只是一个applet都可以。 在使用Hibernate的应用中,Spring对DAO对象通常的事务管理机制应该特别引起关注。它的目的就是分离数据访问和事务处理,使事务性业务对象不与任何特殊的数据访问或事务策略耦合在一起,从而不影响业务对象的可复用性。这种划分既可以经由事务模板(TransactionTemplate)用在java代码中编程的方式实现,也可以经由AOP的事务拦截器(一般用TransactionProxyFactoryBean)用在配置文件中声明的方式实现。无论是本地的Hibernate / JDBC事务,还是JTA事务都支持对象外的事务策略,这对于本地的无状态会话Bean是一个非常有用的选择。 Spring的HibernateTemplate类提供了一个简单的方式实现了Hibernate-based DAO对象,而不必关心如何获得Hibernate的Session实例,也不必关心多方参与的事务处理。无需使用try-catch块,也无需进行事务检查。一个简单的Hibernate访问方法就完全解决了这些麻烦! 无论是在多个DAO接口还是在多方事务的情况下,Spring使得多种DAO对象无缝地协同工作。例如:某些DAO对象可能是基于plain JDBC的实现,更适合于经由Spring的JdbcTemplate来避免手动的异常处理。 你可以单独地使用许多Spring特性,因为Spring的所有对象都是设计成可复用的JavaBean的集合。使用其他的Spring特性时,应用配置概念是一个附加的特性,并不是一个必须的特性。无论如何,当你要决定去构建一个象 Spring这样的内在的基础架构的时候并没有什么范围上的限制。 1. 介绍: 资源管理 典型的业务应用系统常常由于重复的资源管理代码而导致混乱。许多项目试着用自己的方法来解决这个问题,有时为此要付出失败的代价,Spring针对适当的资源管理提倡了一种引人注目的简单方法:即经由模板来倒置控制(Inversion of control),例如:基础类使用回调接口,或者应用AOP拦截器。其基础核心是适当的资源处理和将特殊的API异常转换为一个unchecked的基础异常。 Spring引入了一个DAO异常层用于任何数据访问策略。Spring框架对于直接的JDBC或JdbcTemplate类,都会将Connection异常、SQLException异常转换为适当的DataAccessException异常,包括对特殊数据库的SQL错误转换为有意义的异常。经由不同的事务管理对象,Spring支持JTA和JDBC事务。Spring 也提供对Hibernate的支持,它的这种支持由类似于JdbcTemplate的HibernateTemplate类、HibernateInterceptor类,还有Hibernate事务管理类组成。 Spring框架最主要的目的是使系统层次分明,即将数据访问和事务处理同应用对象分离开来。所有的业务对象都不再依赖数据访问或者事务策略。不再有硬编码的资源查找代码,不再有难以替换的单例对象,也不再需要定制服务注册。 所有的单独的数据访问特性均无需依赖于Spring而单独使用,无需让Spring知道,同时也可以通过Spring的应用配置来进行装配(提供基于XML的配置和对普通JavaBean实例的交叉引用)。在一个典型的Spring应用中,大部分重要的对象都是普通的JavaBean:数据访问模板对象(data access templates)、数据访问对象(使用数据访问模板对象的对象)、事务管理对象及业务对象(使用数据访问对象和事务对象的对象),web表示分解对象、web控制对象(使用业务对象的对象)等等。 2. 应用配置中的资源定义 为了避免应用对象将查找资源的代码进行硬编码,Spring允许在应用配置中将一个如JDBC DataSource或者Hibernate Se

文档评论(0)

df829393 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档