ssh 框架中spring的事務控制

2021-09-01 17:47:59 字數 992 閱讀 2530

ssh框架中,通常我們的action會注入乙個blo類,及服務層類,這個類裡可以處理業務邏輯,執行多個dao的操作。

這個類是受spring事務控制的。例如以下**,當我們請求addroom.do的時候,就把頁面輸入的room資訊發到後台,從而達到插入資料庫的操作。

但是這個操作如果在roomblo裡出現異常,即使插入資料庫操作已完成,就會把事務回滾,從而自動取消剛剛完成資料庫操作。 注意這裡配置的事務型別是propagation_required

beans.xml

propagation_required

roomblo 類我們這麼寫:

public class roomblo 

...}

這個roomdao.addroom(room)操作會在報出異常後回滾。

但是如果我們配置的事務型別是propagation_not_supported,但是這裡異常後事務就不會回滾。

[quote]spring中常用事務型別:

propagation_required--支援當前事務,如果當前沒有事務,就新建乙個事務。這是最常見的選擇。

propagation_supports--支援當前事務,如果當前沒有事務,就以非事務方式執行。

propagation_mandatory--支援當前事務,如果當前沒有事務,就丟擲異常。

propagation_requires_new--新建事務,如果當前存在事務,把當前事務掛起。

propagation_not_supported--以非事務方式執行操作,如果當前存在事務,就把當前事務掛起。

propagation_never--以非事務方式執行,如果當前存在事務,則丟擲異常。

propagation_nested--如果當前存在事務,則在巢狀事務內執行。如果當前沒有事務,則進行與propagation_required類似的操作。[/quote]

Spring 框架(二) 事務

spring 宣告式事務讓我們從複雜的事務處理中得到解脫。使得我們再也無需去處理獲得連線,關閉連線,事務提交和回滾等這些操作。我們在使用 spring 宣告式事務時,有乙個非常重要的概念就是事務屬性。它由事務傳播行為,隔離級別,事務的超時值和事務唯讀標誌組成。spring 的 transaction...

Spring框架 Spring的事務管理

有關事務的概念可以參考 mysql事務。spring當中事務管理的api介面 spring對事務的管理的方式 基於xml形式的事務管理 xmlns xmlns xsi xmlns aop xmlns context xmlns tx xsi schemalocation spring beans 3...

SSH框架中用SPRING的好處

在ssh框假中spring充當了管理容器的角色。我們都知道hibernate用來做持久層,因為它將jdbc做了乙個良好的封裝,程式設計師在與資料庫進行互動時可以不用書寫大量的sql語句。struts是用來做應用層的,他它負責呼叫業務邏輯serivce層。所以ssh框架的流程大致是 jsp頁面 str...