@Transactional(propagation=Propagation.REQUIRED)
public void insertEmploye(Employe emp) {
this.getSqlSession().insert("insert", emp);
this.updateDep(emp);
throw new Exception("My Exception");
}
@Transactional(propagation=Propagation.REQUIRES_NEW)
public void updateDep(Employe emp){
this.getSqlSession().update("updateCount", emp);
}
請問為什麼updatedCount沒有更新 Propagation.REQUIRES_NEW 不是啟動新的事務 隔離外圍的嗎?
如果這兩個方法你是寫在一個Bean裡面的開啟事物是REQUIRED,那調用還是REQUIRED,你可以吧REQUIRES_NEW的方法寫的另一個service
中。這樣才能自治。同時,spring默認是對unchecked事物回滾的。