声明式事务
- 编程式的实现方式缺陷:
- 细节没有被屏蔽:具体操作过程中,所有细节都需要程序员自己完成
- 代码复用性不高:每次实现功能都需要自己编写代码
- 声明式事务:利用框架将固定模式的代码抽取出来,进行封装
- 封装后,我们只需要在配置文件中进行简单的配置
- 优点:
- 提高开发效率
- 消除冗余代码
- 框架会综合考虑相关领域在实际开发环境中可能遇到的问题,进行了健壮性、性能等各个方面的优化
基于注解的声明式事务
- 添加事务配置:
- 添加事务注解
因为service层表示业务逻辑层,一个方法表示一个完成的功能,因此处理事务一般在sercive层处理
@Transactional
注解标识的位置:- 标识在方法上:只影响该方法
- 标识在类上:影响类中的所有方法
@Transactional
的属性:readOnly
:设置只读- 一般用在查询
timeout
:设置超时时间,超出时间后强制进行回滚和事务处理- 设置回滚策略