Spring的默認事務隔離級別ISOLATION_DEFAULT 是 ISOLATION_READ_COMMITTED 提交讀;默認事務傳播行為是 PROPAGATION_REQUIRED,如果存在一個事務,則支持當前事務。如果沒有事務則 開啟一個新的事務。
這裡有個很有意思的事情,想和大家一起分享一下。
Class Sample{
private int id;
private String name;
//setters and getters
}
Class A {
public void functionA(Sample sample){
//事務處理,更新sample
}
}
class B {
public void functionB(List samples){
//事務處理,遍歷samples,調用A的functionA方法
}
}
代碼我就不詳細的寫出來了,大致的意思大家也應該能看明白,事務的隔離 級別和傳播行為都是默認的。調用B的functionB方法,大家覺得會出現什麼問題 ?