spring对持久层封装

spring对持久层封装

ID:10004693

大小:109.50 KB

页数:12页

时间:2018-05-20

spring对持久层封装_第1页
spring对持久层封装_第2页
spring对持久层封装_第3页
spring对持久层封装_第4页
spring对持久层封装_第5页
资源描述:

《spring对持久层封装》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、事务管理对于J2EE应用程序而言,事务的处理一般有两种模式:1.依赖特定事务资源的事务处理这是应用开发中最常见的模式,即通过特定资源提供的事务机制进行事务管理。如通过JDBC、JTA的rollback、commit方法;HibernateTransaction的rollback、commit方法等。这种方法大家已经相当熟悉。2.依赖容器的参数化事务管理通过容器提供的集约式参数化事务机制,实现事务的外部管理,如EJB中的事务管理模式。容器管理的参数化事务为程序开发提供了相当的灵活性,同时因为将事务委托给容器进行管理,应用逻辑中无需再编写事务代码,大大节省了代码量(特别是针对需要同时操作

2、多个事务资源的应用),从而提高了生产率。Spring事务管理能给我们带来什么?对于传统的基于特定事务资源的事务处理而言(如基于JDBC的数据库访问),Spring并不会对其产生什么影响,我们照样可以成功编写并运行这样的代码。同时,Spring还提供了一些辅助类可供我们选择使用,这些辅助类简化了传统的数据库操作流程,在一定程度上节省了工作量,提高了编码效率。对于依赖容器的参数化事务管理而言,Spring则表现出了极大的价值。Spring本身也是一个容器,只是相对EJB容器而言,Spring显得更为轻便小巧。我们无需付出其他方面的代价,即可通过Spring实现基于容器的事务管理(本质上来

3、讲,Spring的事务管理是基于动态AOP)。下面这段xml配置片断展示了Spring中的事务设定方式:com.mysql.jdbc.Driverjdbc:mysql://localhost/test

4、perty>usermypass

5、

6、>PROPAGATION_REQUIREDPROPAGATION_REQUIRED,readOnly配置中包含了dataSource,transactionManager等资源定义。这些资源都为一个名为userDAOProx

7、y的TransactionProxyFactoryBean服务,而userDAOProxy则对包含实际数据逻辑的userDAO进行了事务性封装。可以看到,在userDAOProxy的"transactionAttributes"属性中,我们定义了针对userDAO的事务策略,即将所有名称以insert开始的方法(如UserDAO.insertUser方法)纳入事务管理范围。如果此方法中抛出异常,则Spring将当前事务回滚,如果方法正常结束,则提交事务。而

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。