spring-事务概述

目录

Spring事务架构

事务特性

并发事务下存在的几个安全性问题

脏读

不可重复读

幻读

事务的隔离级别

事务传播特性

 

Spring事务常用的类和接口

Spring中使用事务的套路

容器中注册事务相关组件

createBean时生成代理对象,并注册到容器

调用代理Bean的相关方法时


Spring事务架构

 

事务特性

事务是指逻辑上的一组操作,这组操作要么全部成功,要么全部失败;

事务的特性:

1:原子性

    是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生;

2:一致性

   是指事务前后,数据的完整性必须保持一致;

3:隔离性

   是指多个用户并发操作数据时,一个用户的事务不能被另一个用户的事务干扰,多个并发事务之间数据要相互隔离;

4:持久性

  是指数据一旦被提交,它对数据库中数据的改变是永久性的,即使数据库发生了故障,也不应该对其有任何影响;

 

并发事务下存在的几个安全性问题

脏读

一个事务读取了另外一个事务修改但是还未提交的数据,如果这些数据被回滚,那么读取到的数据是无效的;

不可重复读

同一事务中,多次读取同一数据,返回的结果不同

幻读

一个事务读取了几行记录后,另一个事务插入了一些数据,那么幻读就发生了;

 

事务的隔离级别

 

事务传播特性

在类TransactionDefinition中定义;

 

Spring事务常用的类和接口

 

Spring中使用事务的套路

容器中注册事务相关组件

 

createBean时生成代理对象,并注册到容器

 

调用代理Bean的相关方法时

主要是Spring AOP起作用;

 

 

展开阅读全文

没有更多推荐了,返回首页