spring @Transactional 事务不回滚的其中一个原因

来源:互联网 发布:js 过滤特殊字符 编辑:程序博客网 时间:2024/05/18 13:25

1、当出现以下代码情况时会出现@Transactional 无效,事务无法回滚,原因是当异常抛出后被function1方法捕获了,无法抛出异常。导致spring 事务无法捕获到异常。导致无法回滚。


 
public void function1()
{
try{
function2();
}catch(Exception e)
{
 
}
}
 
@Transactional
public void function2()
{
//do something
}


但是当function2()是另外一个service中的事务时,则可以调用。

0 0
原创粉丝点击