Spring最为自豪的,就是它在事务管理是比EJB2的功能还要丰富,还要方便。Spring将EJB2时代的事务属性扩展了,包括了事务的传播行为、隔离级别、回滚规则等。其中传播行为与EJB2的事务属性的概念相当,包括以下几种:
1、Required
简单来说就是,如果服务器端已经处于一个事务中了,那客户端也处于一个事务中;如果服务器端不处于一个事务中,那么客户端新建一个事务。
2、RequireNews
简单来说就是,无论客户端是否处于事务中,客户端都会新建一个事务。
3、Support
如果服务器端处于事务中,则客户端也处于同一事务中;如果服务器端不处于事务中,则客户端也不处于事务中。
4、NotSupport
如果服务器端处于事务中,则客户端将服务器端事务挂起,等待客户端事务执行完毕后,再执行客户端事务;如果服务器端事务不处于事务中,则客户端也不处于事务中。
5、Mandatary
强制要求客户端一定要处于服务器端的事务中,如果服务器端没有处于事务中,则抛出异常。
6、Never
永远不处于事务中,如果服务器端处于事务中,则抛出异常。
spring 事务属性中的传播行为?
最新推荐文章于 2022-10-10 14:49:15 发布