第10章-事务处理.pptVIP

  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 MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 无限挑战 无限飞翔 Spring MVC开发技术指南 清华大学出版社 第10章 事务处理 主要内容 编程式事务处理 声明式事务处理 Spring MVC框架对数据库事务处理进行了抽象,这带来了以下优点: 1.为复杂的事务API提供了一致的编程模型,如JDBC和Hibernate。 2.支持声明式事务管理。 3.提供更简单、更易使用的编程式事务管理API。 通常情况下,如果在事务中抛出了未检查异常(继承RuntimeException的异常),则默认将回滚事务。如果没有抛出任何异常,或者抛出了已检查异常,则仍然提交事务。 10.1 编程式事务处理 在代码中显式调用beginTransaction()、commit()、rollback()等事务处理相关的方法,这就是编程式事务管理。当只有少数事务操作时,编程式事务处理才比较合适。 10.1.1 基于底层API的编程式事务处理 10.1.2 基于TransactionTemplate的编程式事务处理 10.1.1 基于底层API的编程式事务处理 基于底层API的编程式事务处理,就是根据PlatformTransactionManager、TransactionDefinition 和 TransactionStatus 三个核心接口,通过编程的方式来进行事务处理。 为了方便演示事务处理,需要做如下步骤: 1.在MySQL数据库card中创建表test,表结构如图10.1所示。表中已有数据,如图10.2所示。 2.在工程src目录下,创建“perties”属性文件,具体代码如下: #database info db.driverClassName=com.mysql.jdbc.Driver db.url=jdbc:mysql://localhost:3306/card?characterEncoding=utf8 db.username=root db.password=root 3.在配置文件springmvc-servlet.xml中创建jdbc数据源、创建jdbcTemplate模板以及添加事务支持 !--创建jdbc数据源 -- !--创建jdbcTemplate模板 -- !-- 添加事务支持 -- bean id=txManager class=org.springframework.jdbc.datasource.DataSourceTransactionManager property name=dataSource ref=dataSource / /bean 4.程序入口页面index.jsp 5.创建控制器IndexController,在控制器中,使用编程式方式处理事务 6.结果页面test.jsp 7.测试程序,在地址栏输入“http://localhost:8080/ch10/”测试事务处理。 10.1.2 基于TransactionTemplate的编程式事务处理 TransactionTemplate的execute()方法有一个TransactionCallback接口类型的参数,该接口中定义了一个doInTransaction()方法,通常以匿名内部类的方式实现TransactionCallback 接口,并在其doInTransaction()方法中书写业务逻辑代码。这里可以使用默认的事务提交和回滚规则,在业务代码中不需要显式调用任何事务处理的API。doInTransaction()方法有一个TransactionStatus类型的参数,可以在方法的任何位置调用该参数的setRollbackOnly()方法将事务标识为回滚,以执

文档评论(0)

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

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

1亿VIP精品文档

相关文档