配置了事務,異常丟擲為什麼不回滾呢?
解決:a.
先確認資料庫型別,看表是否採用innodb,mysql只有innodb型別表才支援事務.
myiasm 是不支援事務的.
b.看事務配置的相關dtd
發現有個
rollback-for 的配置.
後面找了下.發現預設情況下.
spring對checked exception(比如exception,ioexception的子類)是不回滾事務的,對應runtimeexception回滾事務.所以這裡要注意了.
增加rollback-for配置就ok了
rollback-for 可以配置多個異常以,號分隔.
關於MYSQL事務不回滾問題
關於mysql事務不回滾的問題 實現功能時,發現mysql事務不回滾,檢視表的引擎是innodb,但有可能資料庫的不是,檢視修改如下 檢視mysql資料庫使用的儲存引擎 mysql show variables like storage engine 結果 variable name value s...
Transactional事務不回滾問題
一 contextconfiglocation springmvc org.springframework.web.servlet.dispatcherservlet contextconfiglocation classpath spring mvc.xml 1 mvc 如上圖spring事務配置...
AOP的實物不回滾
實物配置如下 配置expression execution com.kl.napchen.store.impl.希望該包名下的所有類的所有方法都啟用事物,然後我在service裡面 override public mapdelete listproducttypes if producttype.g...