Spring事務的個人總結

2021-08-10 13:19:47 字數 1299 閱讀 7654

spring事務的理解

事務的四個特性:

原子性(atomicity):事務是乙個原子操作,由一系列動作組成。事務的原子性確保動作要麼全部完成,要麼完全不起作用。

一致性(consistency):一旦事務完成(不管成功還是失敗),系統必須確保它所建模的業務處於一致的狀態,而不會是部分完成部分失敗。在現實中的資料不應該被破壞。

隔離性(isolation):可能有許多事務會同時處理相同的資料,因此每個事務都應該與其他事務隔離開來,防止資料損壞。

永續性(durability):一旦事務完成,無論發生什麼系統錯誤,它的結果都不應該受到影響,這樣就能從任何系統崩潰中恢復過來。通常情況下,事務的結果被寫到持久化儲存器中。

spring對事務的支援是建立在資料庫事務的基礎之上的。

宣告式事務管理建立在aop之上的。其本質是對方法前後進行攔截,然後在目標方法開始之前建立或者加入乙個事務,在執行完目標方法之後根據執**況提交或者回滾事務。宣告式事務最大的優點就是不需要通過程式設計的方式管理事務,這樣就不需要在業務邏輯**中摻雜事務管理的**,只需在配置檔案中做相關的事務規則宣告(或通過基於@transactional註解的方式),便可以將事務規則應用到業務邏輯中。

spring事務分類

spring提供四種事務的支援:

1.org.springframework.jdbc.datasource.datasourcetransactionmanager

提供對ibatis、mybatis等jdbc的操作的事務支援;

2.org.springframework.orm.hibernate3.hibernatetransactionmanager

提供對hibernate框架的事務支援,支援3以上的版本;

3.org.springframework.orm.jpa.jpatransactionmanager

4.org.springframework.transaction.jta.jtatransactionmanager

提供分布式事務支援

spring事務配置

spring事務引數

spring事務巢狀

spring事務深入機制

spring 在啟動的時候會去解析生成相關的bean,這時候會檢視擁有相關註解的類和方法,並且為這些類和方法生成**,並根據@transaction的相關引數進行相關配置注入,這樣就在**中為我們把相關的事務處理掉了(開啟正常提交事務,異常回滾事務)。

真正的資料庫層的事務提交和回滾是通過binlog或者redo log實現的。

spring事務異常捕獲

相關資料

spring 事務的總結

1.初識事務 事務就是對資料資源進行可控的一組訪問操作。為保證事務執行前後,資料資源所承載的系統狀態所處於正確的狀態,事務本身有四個屬性 原子 性,一致性,隔離性和永續性。原子性 原子性要求所有操作是乙個整體,要麼全部提交,要麼全部失敗。一致性 要求事務對資料資源執行一致性檢查,事務提交之前是處於某...

spring事務總結

1.spring中被標有 transactional註解 也就是事務 的方法不能夠自己呼叫自己。2.在同乙個service實現類中,不同的方法之間可以相互呼叫。3.spring框架的事務基礎架構 將預設地只在丟擲執行時和unchecked exceptions時才標識事務回滾。也就是說,當丟擲乙個 ...

spring 事務總結

tx是由aop實現的 aop的實現方式 1 方式 spring aop 1.jdk的基於介面方式 2.cglib的基於類的方式 修改位元組碼,加入extend 類?這兩種 方式 都存在父子關係,也跟日常生活中的 一樣。具體可以參考動態 模式 2 非 aspectj?這貨沒用 實現?有空看看cglib...