我有一些生产问题。
我在一个表T1中有一个数据,方法启动时需要重置该数据,方法结束时需要再次更新。
说
我有父交易方式
@Transactional
public method A(){
callResetTable1();
updateBillingDetail();
callUpdateTable1();
}
@Transactional(propagation=Propagation.REQUIRES_NEW)
public callResetTable1(){
dao.callUpdate()//table A
}
根据我的理解,首先将调用callResetTable1方法,该方法将在单独的事务中运行并得到持久化(数据将在父事务中提取到数据库中),然后updateBillingDetail,然后将调用callUpdateTable1来提取在callResetTable1方法中提交的新数据,上面对callUpdateTable1进行了更新。
对于我们来说,发生这种情况时表已被锁定。