亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

寫了個異常,卻事務沒有回滾,數據庫的表也是InnoDB的,求大神指導。

??

https://img1.sycdn.imooc.com//5b1a4fd20001076804780401.jpg

求大神指導。

正在回答

3 回答

這個是?Spring?框架的鍋,因為你拋出的是? Exception,而?Spring?對這個異常是不會進行事務回滾的,如果想要進行事務回滾,可以拋出?Exception?的子類?RuntimeException。

if(true){
????throw?new?RuntimeException();
}


6 回復 有任何疑惑可以回復我~
#1

慕斯7058562 提問者

謝謝你,解決問題了,可這是為什么呢
2018-06-09 回復 有任何疑惑可以回復我~
#2

JachinYin 回復 慕斯7058562 提問者

這個是 Spring 的設計,它的 @Transactional 注解被指定為只對 RuntimeException 及其子類的異常才會進行事務回滾,至于為什么會這么設計我也不明白。如果說實在是想要讓 Spring 能對所有出現的異常都進行回滾的話,可以在嘗試在使用 @Transactional 注解時指定回滾的異常類型,寫法如下:@Transactional(rollbackFor=Exception.class)
2018-06-09 回復 有任何疑惑可以回復我~
#3

慕斯7058562 提問者 回復 JachinYin

感謝,是這樣子的。
2018-06-09 回復 有任何疑惑可以回復我~

https://img1.sycdn.imooc.com//5b1b1ee00001f2fc05350151.jpg

可是,我按視頻里的操作完就是inndb的。

0 回復 有任何疑惑可以回復我~

數據庫執行下面的語句

alter table girl engine =innodb;


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
2小時學會Spring Boot
  • 參與學習       151526    人
  • 解答問題       1132    個

Spring Boot入門視頻教程,你將學會使用Spring Boot快速構建應用程序

進入課程

寫了個異常,卻事務沒有回滾,數據庫的表也是InnoDB的,求大神指導。

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號