Spring:JTA transaction unexpectedly rolled back (maybe due to a timeout) 事务超时

采用spring框架时,在 Service 层的方法中加上注解 @Transactional 就可以将这个方法加上事务管理。
如果这个方法中处理的业务逻辑比较多,比较耗时,那么可能会出现事务超时的异常

JTA transaction unexpectedly rolled back (maybe due to a timeout)

如果出现这个异常,解决办法是在 @Transactional 中加上 timeout = 3000 ,这个时间就是超时时间,如下

@Transactional(timeout = 3000)

查看 @Transactional 注解源码可以知道这个 timeout 的值默认值如下图红框说明

 

 

 

 

 

posted @ 2019-12-23 14:26  colin220  阅读(5990)  评论(0编辑  收藏  举报