Spring事务管理

Posted cn-chy-com

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring事务管理相关的知识,希望对你有一定的参考价值。

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

事务的特性:ACID

原子性:事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生

一致性:事务前后数据的完整性约束保持一致

隔离性:多个用户并发访问数据库时,一个用户的事务不会被其他用户的事务干扰,数据相互隔离

持久性:事务提交之后对数据的改变是永久性的

Spring事务管理的三个主要接口:

PlatformTransactionManager(事务管理器)

TransactionDefinition(事务定义信息:传播行为、隔离级别、超时、只读)

TransactionStatus事务具体运行状态

根据不同的平台选择相应的事务管理器(如JDBC选择DataSourceManager)

脏读:读到其他事务修改数据后未提交的值

不可重复读(在于更新和删除)

幻读(在于插入)

事务的传播行为:解决业务层方法之间的相互调用问题

Spring支持两种事务管理:

1、编程式事务管理

2、声明式事务管理(基于AOP思想实现)

基于TransactionProxyFactoryBean的方式

基于AspectJ的XML的方式

基于注解方式(常用)

以上是关于Spring事务管理的主要内容,如果未能解决你的问题,请参考以下文章

Spring框架--Spring事务管理和Spring事务传播行为

Spring框架--Spring事务管理和Spring事务传播行为

Spring本地事务

如何手动开启spring事务

什么叫做spring的声明式事务

spring怎么进行的事务管理,求指导?