下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 Spring 中的事務(wù)管理實(shí)例詳解本文實(shí)例講述了 Spring 中的事務(wù)管理。分享給大家供大家參考。具體分析如下:事務(wù)簡(jiǎn)介:事務(wù)管理是企業(yè)級(jí)應(yīng)用程序開發(fā)中必不可少的技術(shù),用來(lái)確保數(shù)據(jù)的完整性和一致性事務(wù)就是一系列的動(dòng)作,它們被當(dāng)作一個(gè)單獨(dú)的工作單元。這些動(dòng)作要么全部完成,要么全部不起作用事務(wù)的四個(gè)關(guān)鍵屬性(ACID) 原子性(atomicity):事務(wù)室一個(gè)原子操作,有一系列動(dòng)作組成。事務(wù)的原子性確保動(dòng)作要么全部完成,要么完全不起作用 一致性(consistency):一旦所有事務(wù)動(dòng)作完成,事務(wù)就被提交。數(shù)據(jù)和資源就處于一種滿足業(yè)務(wù)規(guī)則的一致性狀態(tài)中 隔離性(isolation):可能有許多
2、事務(wù)會(huì)同時(shí)處理相同的數(shù)據(jù),因此每個(gè)事物都應(yīng)該與其他事務(wù)隔離開來(lái),防止數(shù)據(jù)損壞 持久性(durability):一旦事務(wù)完成,無(wú)論發(fā)生什么系統(tǒng)錯(cuò)誤,它的結(jié)果都不應(yīng)該受到影響。通常情況下,事務(wù)的結(jié)果被寫到持久化存儲(chǔ)器中 Spring 中的事務(wù)管理作為企業(yè)級(jí)應(yīng)用程序框架,Spring 在不同的事務(wù)管理 API 之上定義了一個(gè)抽象層。而應(yīng)用程序開發(fā)人員不必了解底層的事務(wù)管理 API,就可以使用 Spring 的事務(wù)管理機(jī)制。Spring 既支持編程式事務(wù)管理,也支持聲明式的事務(wù)管理編程式事務(wù)管理:將事務(wù) 管理代碼嵌入到業(yè)務(wù)方法中來(lái)控制事務(wù)的提交和回滾,在編程式事務(wù)中,必須在每個(gè)業(yè)務(wù)操作中包含額外的事務(wù)
3、管理代碼聲明式事務(wù)管理:大多數(shù)情況下比編程式事務(wù)管理更好用。它將事務(wù)管理代碼從業(yè)務(wù)方法中分離出來(lái),以聲明的方式來(lái)實(shí)現(xiàn)事務(wù)管理。事務(wù)管理作為一種橫切關(guān)注點(diǎn),可以通過(guò) AOP 方法模塊化。Spring 通過(guò) Spring AOP 框架支持聲明式事務(wù)管理。Spring 事務(wù)的傳播屬性:當(dāng)事務(wù)方法被另一個(gè)事務(wù)方法調(diào)用時(shí),必須指定事務(wù)應(yīng)該如何傳播。例如:方法可能繼續(xù)在現(xiàn)有事務(wù)中運(yùn)行,也可能開啟一個(gè)新事務(wù),并在自己的事務(wù)中運(yùn)行。事務(wù)的傳播行為可以由傳播屬性指定。Spring 定義了 7 種傳播行為: Spring 支持的事務(wù)傳播行為傳播行為 含義 PROPAGATION_MANDATORY表示該方法必須在
4、事務(wù)中運(yùn)行,如果當(dāng)前事務(wù)不存在,則會(huì)拋出一個(gè)異常 PROPAGATION_NESTED 表示如果當(dāng)前已經(jīng)存在一個(gè)事務(wù),那么該方法將會(huì)在嵌套事務(wù)中運(yùn)行。嵌套的事務(wù)可以獨(dú)立于當(dāng)前事務(wù)進(jìn)行單獨(dú)地提交或回滾。如果當(dāng)前事務(wù)不存在,那么其行為與 PROPAGATION_REQUIRED一樣。注意各廠商對(duì)這種傳播行為的支持是有所差異的??梢詤⒖假Y源管理器的文檔來(lái)確認(rèn)它們是否支持嵌套事務(wù)PROPAGATION_NEVER表示當(dāng)前方法不應(yīng)該運(yùn)行在事務(wù)上下文中。如果當(dāng)前正有一個(gè)事務(wù)在運(yùn)行,則會(huì)拋出異常 PROPAGATION_NOT_SUPPORTED 表示該方法不應(yīng) 該運(yùn)行在事務(wù)中。如果存在當(dāng)前事務(wù),在該方法運(yùn)行期間,當(dāng)前事務(wù)將被掛起。如果使用 JTATransactionManager的話,則需要訪問(wèn) TransactionManagerPROPAGATION_REQUIRED 表示當(dāng)前方法必須運(yùn)行在事務(wù)中。如果當(dāng)前事務(wù)存在,方法將會(huì)在該事務(wù)中運(yùn)行。否則,會(huì)啟動(dòng)一個(gè)新的事務(wù) PROPAGATION_REQUIRED_NEW表示當(dāng)前方法必須運(yùn)行在它自己的事務(wù)中。一個(gè)新的事務(wù)將被啟動(dòng)。如果存在當(dāng)前事務(wù),在該方法執(zhí)行期間,當(dāng)前事務(wù)會(huì)被掛起。如果使用 JTATransactionManager的話,則需要訪問(wèn) Transa
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)數(shù)學(xué)一年級(jí)第二學(xué)期口算計(jì)算共3005道題
- 農(nóng)業(yè)生產(chǎn)技術(shù)的創(chuàng)新發(fā)展與商業(yè)機(jī)遇挖掘
- 以目的地為驅(qū)動(dòng)的家庭旅行路線規(guī)劃
- 優(yōu)化醫(yī)療系統(tǒng)讓運(yùn)動(dòng)場(chǎng)地更安全更便捷
- 園林綠化養(yǎng)護(hù)工作總結(jié)(10篇)
- 創(chuàng)業(yè)公司的品牌色彩構(gòu)建策略
- 創(chuàng)新思維訓(xùn)練激發(fā)孩子的創(chuàng)新潛能
- 關(guān)于在辦公室和制造領(lǐng)域中實(shí)施智能工控系統(tǒng)的探索
- 兒童心理發(fā)展視角下的跨文化家庭教育研究
- 創(chuàng)新技術(shù)在學(xué)校體育館維護(hù)中的應(yīng)用
- DB51-T 2975-2022氣凝膠復(fù)合保溫隔熱材料及系統(tǒng)通用技術(shù)條件
- 2022干燥綜合征評(píng)估方法-Sjgren應(yīng)答評(píng)估工具(STAR)
- 中興通訊學(xué)院
- 病理生理學(xué)題庫(kù)含答案
- 水穩(wěn)施工質(zhì)量保證措施
- 建筑工程項(xiàng)目安全總監(jiān)述職匯報(bào)課件
- 航天器用j30jh系列微型矩形電連接器
- 《老年服務(wù)與管理概論》期末考試試卷(B)卷
- DB11T 2000-2022建筑工程消防施工質(zhì)量驗(yàn)收規(guī)范
- 三年級(jí)上冊(cè)美術(shù)課件-第8課 身邊的設(shè)計(jì)藝術(shù) ▏人美版 (共22張PPT)
- 人教精通版英語(yǔ)四年級(jí)上冊(cè)期末復(fù)習(xí)課件
評(píng)論
0/150
提交評(píng)論