※ 引述《luoqr (.....)》之銘言:
我在寫某個專案也很奇怪
只要 entity 有異動到,就算不做 save or update 等方法
transaction 結束後會把全部的異動 commit 到 DB 裡面...
還有一個就是
若 entity constraint 設定若跟 DB 不符,
save 當下不會出錯,transaction 結束後才會出錯
但是包在 transaction 外層的 code block 並不會接到 exception...
像這樣
try {
test1();
log.info("完成");
} catch(Exception e) {
log.error("出現錯誤")
}
就算 test1 出錯 (transaction 掛 test1),仍會 log 出 "完成"
這兩個 case 我不能理解阿,有人能解釋嗎?