版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、spring事物管理事物管理2010051310:49172人閱讀評(píng)論(0)收藏舉報(bào)Spring的事務(wù)管理是其非常重要的一個(gè)方面,Spring的應(yīng)用主要集中在IocAOPDAO事務(wù)四個(gè)方面。這部分內(nèi)容比較抽象,需要花費(fèi)大篇幅來(lái)寫。一、事務(wù)控制的基本知識(shí)不管是什么事務(wù),必須先對(duì)數(shù)據(jù)庫(kù)的事務(wù)概念有個(gè)明確認(rèn)識(shí)才行。首先先簡(jiǎn)單介紹下數(shù)據(jù)庫(kù)的事務(wù)。事務(wù)的概念:事務(wù)是一組原子性操作的工作單元,這組工作單元要么執(zhí)行成功,要么不成功。事務(wù)有四個(gè)屬性原子
2、性、一致性、獨(dú)立性和持久性(CAID),所有這些方面都是依靠事務(wù)資源去維護(hù)。事務(wù)隔離:SQL標(biāo)準(zhǔn)用三個(gè)必須在并行的事務(wù)之間避免的現(xiàn)象定義了四個(gè)級(jí)別的事務(wù)隔離。這些不希望發(fā)生的現(xiàn)象是:臟讀(dirtyreads)一個(gè)事務(wù)讀取了另一個(gè)未提交的并行事務(wù)寫的數(shù)據(jù)。不可重復(fù)讀(nonrepeatablereads)一個(gè)事務(wù)重新讀取前面讀取過(guò)的數(shù)據(jù),發(fā)現(xiàn)該數(shù)據(jù)已經(jīng)被另一個(gè)已提交的事務(wù)修改過(guò)?;米x(phantomread)一個(gè)事務(wù)重新執(zhí)行一個(gè)查詢,返
3、回一套符合查詢條件的行,發(fā)現(xiàn)這些行因?yàn)槠渌罱峤坏氖聞?wù)而發(fā)生了改變。這四種隔離級(jí)別和對(duì)應(yīng)的行為如下表:隔離級(jí)別臟讀(DirtyRead)不可重復(fù)讀(NonRepeatableRead)幻讀(PhantomRead)讀未提交(Readuncommitted)可能可能可能讀已提交(Readcommitted)不可能可能可能可重復(fù)讀(Repeatableread)不可能不可能可能可串行化(Serializable)不可能不可能不可能Spri
4、ng事務(wù)包中的TransactionDefinition接口有對(duì)應(yīng)的隔離級(jí)別的定義。高清楚以上的概念,才能更好理解Spring的事務(wù)管理。二、從編程的角度認(rèn)識(shí)事務(wù)和數(shù)據(jù)庫(kù)事務(wù)概念幾乎完全一樣:事務(wù)是一種機(jī)制,把組成的多個(gè)操作視為一個(gè)操作單元進(jìn)行處理,這個(gè)單元要么全部執(zhí)行成功,要么全部不執(zhí)行。在事務(wù)中,涉及的操作可能依賴于很多不同的數(shù)據(jù)庫(kù)和服務(wù)器。HeuristicCompletionExceptionIllegalTransaction
5、StateExceptionInvalidIsolationLevelExceptionInvalidTimeoutExceptionNestedTransactionNotSupptedExceptionNoTransactionExceptionTransactionExceptionTransactionSuspensionNotSupptedExceptionTransactionSystemExceptionTransacti
6、onTimedOutExceptionTransactionUsageExceptionUnexpectedRollbackException要搞明白Spring事務(wù)控制的原理,必須理解上面四個(gè)接口的含義,下面一一介紹之。1、PlatfmTransactionManager是一個(gè)事務(wù)管理平臺(tái),該接口有許多具體的事務(wù)實(shí)現(xiàn)類,例如DataSourceTransactionManagerHibernateTransactionManagerJ
7、doTransactionManagerJmsTransactionManagerJpaTransactionManagerJtaTransactionManagerTopLinkTransactionManagerWebLogicJtaTransactionManager等等,通過(guò)實(shí)現(xiàn)此接口,Spring可以管理任何實(shí)現(xiàn)了這些接口的事務(wù)。開發(fā)人員也可以使用統(tǒng)一的編程模型來(lái)控制管理事務(wù)。此接口中有三個(gè)方法:voidcommit(Tran
8、sactionStatusstatus)Committhegiventransactionwithregardtoitsstatus.監(jiān)視事務(wù)狀態(tài),并提交一個(gè)事務(wù)。TransactionStatusgetTransaction(TransactionDefinitiondefinition)Returnacurrentlyactivetransactioncreateanewoneaccdingtothespecifiedpropaga
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- spring的聲明式事物
- 公共管理 spring rain整理
- spring
- 會(huì)員管理系統(tǒng)(struts+hibernate+spring)
- spring課件
- 事物處理準(zhǔn)則(人力資源管理)
- spring打印
- spring教程
- spring 框架
- spring簡(jiǎn)介
- spring框架
- spring筆記
- 4、spring security 安全權(quán)限管理手冊(cè)
- 圖書管理系統(tǒng)(struts+hibernate+spring)
- 車輛管理系統(tǒng)(struts+hibernate+spring+oracle)
- spring86317
- spring簡(jiǎn)介87242
- spring87125
- spring88680
- 各類事物話題(雅思)
評(píng)論
0/150
提交評(píng)論