- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Spring中Transactional事务回滚实例及源码.
一、使用场景举例在了解@Transactional怎么用之前我们必须要先知道@Transactional有什么用。下面举个栗子:比如一个部门里面有很多成员,这两者分别保存在部门表和成员表里面,在删除某个部门的时候,假设我们默认删除对应的成员。但是在执行的时候可能会出现这种情况,我们先删除部门,再删除成员,但是部门删除成功了,删除成员的时候出异常了。这时候我们希望如果成员删除失败了,之前删除的部门也取消删除。这种场景就可以使用@Transactional事物回滚。二、checked异常和unchecked异常这里之所以让大家清楚checked异常和unchecked异常概念,是因为:Spring使用声明式事务处理,默认情况下,如果被注解的数据库操作方法中发生了unchecked异常,所有的数据库操作将rollback;如果发生的异常是checked异常,默认情况下数据库操作还是会提交的。checked异常:表示无效,不是程序中可以预测的。比如无效的用户输入,文件不存在,网络或者数据库链接错误。这些都是外在的原因,都不是程序内部可以控制的。必须在代码中显式地处理。比如try-catch块处理,或者给所在的方法加上throws说明,将异常抛到调用栈的上一层。继承自java.lang.Exception(java.lang.RuntimeException除外)。unchecked异常:表示错误,程序的逻辑错误。是RuntimeException的子类,比如IllegalArgumentException, NullPointerException和IllegalStateException。不需要在代码中显式地捕获unchecked异常做处理。继承自java.lang.RuntimeException(而java.lang.RuntimeException继承自java.lang.Exception)。看下面的异常结构图或许层次感更加深些:三、@Transactional的使用实例本实例采用的是Eclipse+maven,maven只是作为jar管理,即便不了解的maven的猿友也可以读懂。3.1、spring的配置文件里面必须先配置tx名字空间如下:为了使用基于@Transactional的事务管理,需要在Spring中进行如下的配置:bean id=appTransactionManagerclass=org.springframework.jdbc.datasource.DataSourceTransactionManagerproperty name=dataSourceref=dataSource //bean tx:annotation-driven proxy-target-class=false transaction-manager=appTransactionManager /博主的整个spring配置文件:?xml version=1.0 encoding=UTF-8?beans xmlns=/schema/beansxmlns:xsi=/2001/XMLSchema-instancexmlns:context=/schema/contextxmlns:tx=/schema/txxmlns:aop=/schema/aopxsi:schemaLocation= /schema/tx/schema/tx/spring-tx-2.5.xsd/schema/beans/schema/beans/spring-beans-3.0.xsd/schema/aop/schema/aop/spring-aop-3.0.xsd/schema/context/schema/context/spring-context-3.0.xsd!-- 引入jdbc配置文件 --bean id=propertyConfigurerclass=org.springframework.beans.factory.config.PropertyPlaceholderConfigurerproperty name=locationslistvalueclasspath:properties/*.properties/value!--要是有多个配置文件,只需在这里继续添加即可 --/list/property/bean!-- 配置数据源 --bean id=dataSourceclass=org.springframework.jdbc.datasource.DriverManagerDataSource!-- 不使用properties来配置 --!-- property name=driverClassName value=com.mysql.
您可能关注的文档
- PKS在重整装置中的应用..doc
- PFISTER转子称..doc
- pintos抢占式优先级..docx
- PLC以太网通讯在煤粉控制系统中的应用..doc
- PL0扩充课程设计报告..doc
- PLC交通灯设计..doc
- PLC例题..doc
- PieterSchelte安装拆卸铺管船..doc
- PLC原理与应用试题答案及复习要点(完整版)..doc
- PLC可编程技术题库..doc
- 2025至2030中国乳房成像行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国乳房活检行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国临床报警管理行业市场占有率及投资前景评估规划报告.docx
- 2025至2030中国两轮车燃油喷射系统行业市场占有率及投资前景评估规划报告.docx
- 2025至2030中国临时髋关节垫片行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国乳房成像技术行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国临床实践管理软件行业市场占有率及投资前景评估规划报告.docx
- 2025至2030中国乳房病变定位装置行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国乳液丁苯橡胶行业市场占有率及投资前景评估规划报告.docx
- 2025至2030中国书包行业市场深度调研及发展策略报告.docx
最近下载
- 2025湖北武汉市汉阳区招聘社区干事40人备考试题及答案解析.docx VIP
- 新能源汽车试题库(附答案).docx VIP
- 《碳纤维片材加固混凝土结构技术规程》(2022年版).pdf VIP
- 2023年地面及屋面分布式光伏发电工程HSE作业指导书(最终版).docx VIP
- 常用塑料特性及塑料成型工艺.pdf VIP
- 甲烷安全技术说明书MSDS.pdf VIP
- 统编版语文四年级上册第五单元素养评估(含答案).docx VIP
- 入党志愿书电子版模板(空白) .doc VIP
- 五年级下册生字练字帖硬笔书法.pdf VIP
- 《国有企业管理人员处分条例》考试题库200题(含答案).docx VIP
文档评论(0)