事物管理
spring事物的好处
为不同的事物API提供了一致的编程模型
支持声明式事务管理
提供比大多数事务API更简单更易于使用的编程式事务管理API
整合spring的各种数据访问抽象
TransactionDefinition
定义了事务策略
int getIsolationLevel()得到当前事务的隔离级别
READ_COMMITTED 授权读取
READ_UNCOMMITTEN 未授权读取
REPEATABLE_READ 可重复读
SERIALIZABLE 序列化读
int getPropagationBehavior() 得到事务传播性
MANDATORY 直接使用当前事务执行 如果没有则抛出异常
NESTED 在创建的新事务中执行 如果当前存在事务,就会形成事务的嵌套
NEVER 在没有事务的情况下执行 如果存在抛出异常
NOT_SUPPORTED 在没有事务情况下执行 如果在当前存在事务 则当前事务挂起
REQUIRED 在事务中执行 如果没有事务就创建一个
REQUIRED_NEW 在新事务中执行 如果当前存在事务 则将当前事务挂起
SUPPORTS 使用当前的环境执行,如果当前存在事务 则使用当前事务 如果没有事务 则不使用事务
int getTimeout()得到事务的超时时间
声明式事务管理
spring 提供二种方式使用spring事务管理功能 一种是在ioc容器中配置事务管理策略 另一种是通过@transactional注解来实现事务的配置功能
配置数据源 DriverManagerDataSource
配置事务管理对象 DataSourceTransactionManager
配置事务策略 <tx:advice>可以针对每一个方法或者每一类的方法来配置事务执行策略
配置AOP<aop:config>
注解式事务管理
@Transactional
ioc容器中增加下面的内容
<tx:annotation-driven/>
spring事物的好处
为不同的事物API提供了一致的编程模型
支持声明式事务管理
提供比大多数事务API更简单更易于使用的编程式事务管理API
整合spring的各种数据访问抽象
TransactionDefinition
定义了事务策略
int getIsolationLevel()得到当前事务的隔离级别
READ_COMMITTED 授权读取
READ_UNCOMMITTEN 未授权读取
REPEATABLE_READ 可重复读
SERIALIZABLE 序列化读
int getPropagationBehavior() 得到事务传播性
MANDATORY 直接使用当前事务执行 如果没有则抛出异常
NESTED 在创建的新事务中执行 如果当前存在事务,就会形成事务的嵌套
NEVER 在没有事务的情况下执行 如果存在抛出异常
NOT_SUPPORTED 在没有事务情况下执行 如果在当前存在事务 则当前事务挂起
REQUIRED 在事务中执行 如果没有事务就创建一个
REQUIRED_NEW 在新事务中执行 如果当前存在事务 则将当前事务挂起
SUPPORTS 使用当前的环境执行,如果当前存在事务 则使用当前事务 如果没有事务 则不使用事务
int getTimeout()得到事务的超时时间
声明式事务管理
spring 提供二种方式使用spring事务管理功能 一种是在ioc容器中配置事务管理策略 另一种是通过@transactional注解来实现事务的配置功能
配置数据源 DriverManagerDataSource
配置事务管理对象 DataSourceTransactionManager
配置事务策略 <tx:advice>可以针对每一个方法或者每一类的方法来配置事务执行策略
配置AOP<aop:config>
注解式事务管理
@Transactional
ioc容器中增加下面的内容
<tx:annotation-driven/>
本文介绍了Spring事务管理的主要特点,包括支持多种事务API、声明式事务管理及编程式事务管理等。详细阐述了TransactionDefinition接口中定义的事务策略,如隔离级别和传播行为,并提供了两种配置事务管理的方式:通过IoC容器配置和使用@Transactional注解。

被折叠的 条评论
为什么被折叠?



