Spring 事務管理

2022-03-05 12:59:50 字數 2050 閱讀 9508

1. 事務基本概述

事務的特性

邏輯上的一組操作-,組成這組事務的各個單元,要麼全部成功,要麼全部失敗

事務的特性(acid)

不考慮隔離性(使用鎖)引發的問題

事務的併發引發的問題

寫問題:丟失更新

不同的鎖引發不同型別的事務(事務隔離級別)

不支援事務

read_uncommitted 未提交讀,不能解決任何讀問題

read_committed 已提交讀 ,不能讀取未提交的事務,能夠解決髒讀

repeateable_read 可重複讀 ,能夠保證兩次讀取的資料是一致的,能解決髒讀和不可重複讀

serializable 可序列化 ,事務的最高端別,可以解決髒讀、不可重複讀和虛讀

2. spring事務管理api

1. 平台事務管理器plateformtransactionmanager

plateformtransactionmanager是乙個介面

2. 事務定義資訊transactiondefinition

3. 事務狀態transactionstatus

用於記錄事務在執行過程中,事務的狀態的物件

4. 關係

事務管理器更具事務定義來管理事務,在管理過程中產生事務狀態

3. spring事務的傳播行為

事務的傳播行為主要用來解決業務層方法相互呼叫的問題

spring提供了七中的事務傳播行為

保證多個操作在不同事務中

4. 程式設計式事務

1. 配置平台事務管理器

2. 配置事務模板

3. 注入業務層

4. 使用事務模板開啟事務
@override

public void transfer(integer from, integer to, double money)

});}

5. 宣告式事務管理(常用)通過配置實現 使用aop

1. xml配置使用宣告式事務管理

不必再業務層新增事務管理**

匯入aop相關的包

配置事務管理器

配置事務管理通知

織入

2. 註解使用宣告式事務

只需配置相應bean 和開啟註解,配置註解

配置事務管理器

配置檔案中開啟事務註解、

類上配置註解

@transactional(isolation=isolation.default)   

public class accountserviceimpl implements accountservice

public void settransactiontemplate(transactiontemplate transactiontemplate)

@override

public void transfer(integer from, integer to, double money)

}

Spring事務管理

spring是ssh中的管理員,負責管理其它框架,協調各個部分的工作。今天一起學習一下spring的事務管理。spring的事務管理分為宣告式跟程式設計式。宣告式就是在spring的配置檔案中進行相關配置 程式設計式就是用註解的方式寫到 裡。下面先說宣告式 spring配置檔案中關於事務配置總是由三...

spring事務管理

一 xml配置事務 二 註解的方式配置事務 bean id txmanaager class org.springframework.orm.hibernate3.hibernatetransactionmanager property name sessionfactory ref session...

spring 事務管理

和資料庫打交道的碼農都知道事務,事務有4大特徵,分別是原子性,一致性,隔離性,永續性。而spring 對事物提供了良好的支援,和api,通過簡單的配置,則可以減低程式設計師重複的操作。1.原子性 原子性指的是乙個事務內的所有操作要麼全部應用到資料庫,要麼取消對資料庫的操作。2.一致性 一致性和原子性...