Spring学习(五)
2023-04-18 16:46:23 时间
事物管理:
一、事物管理的回顾:
1、事物的概念:
- 事物:逻辑上的一组操作,组成这组操作的各个单元,要么全都成功,要么全都失败。
2、事物的特性:
- 原子性:事物不可分割。
- 一致性:事物执行前后,数据完整性保持一致。
- 隔离性:一个事务执行不应该收到其他事务的干扰。
- 持久性:一旦事务结束,数据就持久化到数据库。
二、Spring事务管理的API:
三、事务的传播行为:
为了解决特别复杂的业务,业务层之间的方法相互调用的问题。涉及到你这里有事务,我这里也有事务,怎么传播。
四、Spring的事务管理:
1、搭建Spring 事务管理的环境:
-
搭建service的接口和实现类:
-
创建DAO的接口和实现类:
-
配置service和DAO,交给Spring去管理:
-
在DAO中编写扣钱和价钱的方法:
- 1)配置连接池和JDBC模板:
- 2)在DAO中注入JDBC模板:
2、测试:
业务层加一个异常:
一个转了钱,一个没收到。
五、Spring的事务管理:一类:编程式事务(需要手动编写代码)(了解)
1、配置平台事务管理器:
2、Spring提供了事务管理的模板类:
1)配置事务管理的模板类:
3、在业务层注入事务管理的模板:
4、编写事务管理的代码:
5、测试:
无异常时:转账成功
有异常时:
不会数据丢失,也不会转账成功。说明事务已添加
六、Spring事务管理:二类:声明式事务管理(通过配置实现)-------AOP //底层就是AOP
1、XML方式的声明式事务管理(优点:配完以后,业务层就不用管了,所有业务层的类,所有业务层的方法都会执行这个事务)
-
第一步:引入AOP的开发包:
-
第二步:恢复转账环境
-
第三步:配置事务管理器
-
第四步:配置增强:
-
第五步:AOP的配置:
-
第六步:测试:
没有异常时:转账成功。
有异常时:不转账,数额不变。
2、注解方式的声明式事务管理(优点:配置比较方便,但是每次写业务层的时候,要记得加注解@Transactional)
- 第一步:引入AOP的开发包:
- 第二步:恢复转账环境:
- 第三步:配置事务管理器:不管是哪种,事务管理器都得配
- 第四步:开启注解事务:
- 第五步:在业务层上添加事务管理的注解:
- 第六步:测试
没异常:转账成功。
有异常:不转账。
注:两种方式都得会
相关文章
- 刚上班三天就被裁。。还有谁!!
- 学习CSS3,使用双旋转实现福到了的迎春喜庆特效
- 学习笔记——SSM整合(思路、步骤)
- 学习笔记——SpringMVC拦截器的两种装配方式;SpringMVC拦截器工作原理;SpringMVC中的异常处理器;SpringMVC工作原理
- 学习笔记——拦截器与过滤器的区别;拦截器概述;拦截器中三个方法
- 学习笔记——SpringMVC文件上传与下载
- 学习笔记——SpringMVC消息转换器概述;使用消息转换器处理请求报文;使用消息转换器处理响应报文;使用消息转换器处理Json格式数据
- 学习笔记——springMVC中视图及视图解析器对象;视图控制器
- 学习笔记——SpringMVC处理响应数据;SpringMVC处理请求域响应乱码问题
- 《RPC实战与核心原理》学习笔记Day3
- 盘点12个前端低代码的框架开源项目以及前端低代码的总结调研,比如百度开源的前端低代码框架、阿里巴巴开源的低代码平台、Element UI表单设计及代码生成器、H5可视化页面配置等
- 学习笔记——SpringMVC简介;SpringMVC处理请求原理简图;SpringMVC搭建框架
- 学习笔记——Spring声明式事务管理属性(隔离级别、事务超时、事务只读、事务回滚);Spring5新特性、新注解&整合log4j2;Spring5整合Junit5
- 学习笔记——Spring声明式事务管理;Spring中支持事务管理;使用声明式事务管理;Spring声明式事务管理属性
- 学习笔记——定义切面优先级 ;Spring中的JdbcTemplate;JdbcTemplate的常用API
- 学习笔记——Spring中的AOP(AspectJ);Spring中AOP概述;Spring中AOP相关术语;AspectJ中切入点表达式;AspectJ中JoinPoint对象;AspectJ中通知
- 学习笔记——AOP-代理模式
- 学习笔记——Spring底层IOC实现;Spring依赖注入数值问题;Spring依赖注入方式
- 学习笔记——Mybatis分页插件
- 学习笔记——Mybatis逆向工程MBG;MyBatis逆向工程MBG使用步骤