1、遇到的問題

  當我們一個方法里面有多個數據庫保存操作的時候,中間的數據庫操作發(fā)生的錯誤。偽代碼如下:

photoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網站設計培訓,網站建設培訓

public method() {
    Dao1.save(Person1);
    Dao1.save(Person2);

    Dao1.save(Person2);//假如這句發(fā)生了錯誤,前面的兩個對象會被保存到數據庫中    Dao1.save(Person2);
}

photoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網站設計培訓,網站建設培訓

  期待的情況:發(fā)生錯誤之前的所有數據庫保存操作都回滾,即不保存

  正常情況:前面的數據庫操作會被執(zhí)行,而發(fā)生數據庫操作錯誤開始及之后的所有的數據保存操作都將失敗。這樣子應該都不是我們要的結果吧。

  當遇到這種情況,我們就可以使用Spring的事務解決這個問題。

2、異常的一些基本知識

1) 異常的架構

網友評論