如何全局设置默认@Transactional超时

j3d*_*j3d 4 transactions spring-data-jpa spring-boot

我有许多控制器,它们有很多处理事务的方法...并且我想将所有控制器的事务超时设置为 60:

@AllArgsConstructor
@Controller
public class MyController {

    @Transactional(timeout = 60)
    public void myMethod1(...) {
    }

    @Transactional(timeout = 60)
    public void myMethod2(...) {
    }

    ...
}
Run Code Online (Sandbox Code Playgroud)

如何将全局默认超时设置为 60,以便不再需要timeout = 60为每个方法指定?

Jac*_*ead 8

您可以使用属性: spring.transaction.default-timeout= # 默认事务超时(以秒为单位)。