通过Spring中@transactionnl注解进行操作数据库管理,具体做了那些事情?
① 创建事物 create a new transaction;
② 创建一个数据库连接 create sqlsession;
③ 执行sql语句,然后进行commit;
④ 将数据库连接返还数据库连接池中,释放连接;
声明式事务管理建立在AOP之上的。其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。声明式事务最大的优点就是不需要通过编程的方式管理事务,这样就不需要在业务逻辑代码中掺杂事务管理的代码,只需在配置文件中做相关的事务规则声明(或通过基于@Transactional注解的方式),便可以将事务规则应用到业务逻辑中。
spring事务特性
spring所有的事务管理策略类都继承自org.springframework.transaction.PlatformTransactionManager接口,其中TransactionDefinition接口定义以下特性:事务隔离级别、事务传播行为、事务超时、事务只读属性、spring事务回滚规则等;
转自:https://www.cnblogs.com/niceyoo/p/8732891.html
网友评论