02-事务的概念
作者:互联网
1、事务的概念
- 事务就是一组独立不可分割的工作单元,事务中的操作要不全部执行,要不就全都不执行
- 最直观的一个事务实例,如下所示
- 当前有两张表,分别是账户表(account_table)和商品库存表(inventory_table)
- 如果现在要完成张三的下单业务,要扣减购买商品的100件库存,同时还要扣除张三的账户余额
- 我们编写代码的话,对这两张表进行操作,如果出现用户账户余额不足(即SQL执行失败),那我们就需要考虑是否还要扣减商品库存?这就是事务
- 我们在这一业务中要保证要不这两张表同时改变,要不就都不改变
2、Spring事务的实现方式和实现原理
2.1、Spring事务的实现原理
- Spring事务的本质其实就是数据库对事务的支持,没有数据库的事务支持,Spring是无法提供事务功能的。
- 即会调用数据库设置手动事务
set autocommit=0
,之后通过commit
提交和rollback
回滚,数据库底层是通过binlog
或者redo log
实现的
2.2、Spring事务的实现方式
1)编程式
- 编程式(编程控制事务),
beginTransaction()、commit()、rollback()
等事务管理相关的方法 - 但是编程式会造成代码重复荣誉
2)声明式
- 可以利用Spring自带的
@Transaction
注解或者AOP配置
标签:02,事务,rollback,Spring,数据库,编程,两张,概念 来源: https://www.cnblogs.com/OnlyOnYourself-lzw/p/16543493.html