- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SSH企业培训之Spring事务处理
lxt008 SSH事务处理 本章目标 ACID原则。 学会使用Spring2.x实现声明式事务。 延迟初始化异常的处理 异常对事务的影响。 隔离级别。 事务传播行为。 ACID原则 A原子性 C一致性 I隔离性 D持久性 Spring编程式事务 JDBC事务 JTA事务 修改事务工厂类可以切换。 声明式事务 事务管理 在业务逻辑层控制事务 采取AOP的方式实现声明式事务 声明式事务 1.x的方式 回顾:Spring中AOP的配置方式 配置思路: 配置代码: 声明式事务 配置代码: 声明式事务 1.x的方式 存在问题 解决办法:定义baseTransProxy 声明式事务 “继承自”baseTransProxy 声明式事务 2.0的方式 添加Spring 2.0到项目 1、添加Spring 2.0的jar包 2、添加Spring 2.0配置文件 声明式事务 2.0的方式 优势: 配置思路: 声明式事务 2.0的方式 配置代码: 延迟初始化异常的处理 lazy=“false” :不延迟加载 fetch=“join”:连接查询抓取关联数据,不延迟加载 Hibernate.initialize(dept.getEmps()); Open Session In View模式 把session扩展到view层。 ? Demo 异常对事务的影响 任何RuntimeException将触发事务回滚 checked Exception将不触发事务回滚 并发事务可能出现的问题 Dirty reads 脏读 non-repeatable reads 不可重复读。 phantom reads 幻象读,这个和non-repeatable reads相似,也是同一个事务中多次读不一致的问题。条件数据集改变。 Dirty reads non-repeatable reads phantom reads Serializable 不会 不会 不会 REPEATABLE READ 不会 不会 会 READ COMMITTED 不会 会 会 Read Uncommitted 会 会 会 隔离级别 Serializable(序列化) 最严格的级别,事务串行执行,资源消耗最大; REPEATABLE READ(可重复读取) 保证事务不会修改由另一个事务读取但未提交的数据。避免脏读取和不可重复读取的情况。 READ COMMITTED(读已提交) 大多数主流数据库的默认隔离等级,保证事务不会读到另一个并行事务已修改但未提交的数据,避免脏读取。该级别适用于大多数系统。 Read Uncommitted(读未提交) 可以读取另一个并行事务已修改但未提交的数据。 事务传播行为 PROPAGATION_REQUIRED: 如果当前没有事务,就新建一个事务,如果已经存在一个事务中,加入到这个事务中。这是最常见的选择。 PROPAGATION_SUPPORTS: 支持当前事务,如果当前没有事务,就以非事务方式执行。 PROPAGATION_MANDATORY 使用当前的事务,如果当前没有事务,就抛出异常。 PROPAGATION_REQUIRES_NEW 新建事务,如果当前存在事务,把当前事务挂起。 事务传播行为 PROPAGATION_NOT_SUPPORTED 以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。 PROPAGATION_NEVER 以非事务方式执行,如果当前存在事务,则抛出异常。 PROPAGATION_NESTED 如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则执行与PROPAGATION_REQUIRED类似的操作。 特别注意:可以加入log4j查看Spring输出日志,有哪些信誉好的足球投注网站begin/commit/suspend等关键字查看事务边界!!! 总结 ACID原则。 学会使用Spring2.x实现声明式事务。 延迟初始化异常的处理 异常对事务的影响。 隔离级别。 事务传播行为。 *
您可能关注的文档
最近下载
- 计算机操作系统(慕课版)汤小丹课后习题答案解析.pdf
- 历史人教版(七年级)初一上册历史期末测试题及答案.doc VIP
- 2024年油气田开发真题.doc
- 超星网课《逻辑学导论》超星尔雅答案2023章节测验答案.doc VIP
- 恩格斯《路德维希-·-费尔巴哈和德国古典哲学的终结》.doc VIP
- 2024年款 上汽通用别克 昂科威Plus 车主手册用户手册说明书.pdf VIP
- 电容器带电粒子在电场中的运动-2025高考物理复习热点题型讲义.pdf VIP
- 云南省小粒咖啡出口贸易问题及对策.docx VIP
- !24J306图集窗井、设备吊装口、排水沟、集水坑.pdf VIP
- 初中数学经典题型.pdf VIP
有哪些信誉好的足球投注网站
文档评论(0)