关于服务和@Transactional

Pre*_*hev 4 java spring dao hibernate transactions

如果我有一个服务类连续调用其他三个服务类,并且每个子服务都必须在某个时刻处理一个 DAO 对象,那么我该如何使包装器服务将它们全部包装到一个事务中?它会像用 @Transactional 注解包装器一样简单吗?如果 DAO 已标记为 @Transactional 该怎么办?

Tom*_*icz 5

Spring 框架中默认的事务传播是REQUIRED,这意味着如果事务尚不存在或代码加入现有事务,则创建该事务:

支持当前事务,如果不存在则创建一个新事务。类似于同名的 EJB 事务属性。

这是事务注释的默认设置。

这意味着,如果将对三个事务方法的调用包装在单个事务方法中,它们将全部在单个事务中运行。就这样。

也可以看看: