国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

spring事物的七種事物傳播屬性行為及五種隔離級別

2019-11-14 22:17:33
字體:
來源:轉載
供稿:網友
sPRing事物的七種事物傳播屬性行為及五種隔離級別首先,說說什么事務(Transaction)。事務,就是一組操作數據庫的動作集合。事務是現代數據庫理論中的核心概念之一。如果一組處理步驟或者全部發生或者一步也不執行,我們稱該組處理步驟為一個事務。當所有的步驟像一個操作一樣被完整地執行,我們稱該事務被提交。由于其中的一部分或多步執行失敗,導致沒有步驟被提交,則事務必須回滾到最初的系統狀態。

其中spring七個事物傳播屬性: PROPAGATION_REQUIRED -- 支持當前事務,如果當前沒有事務,就新建一個事務。這是最常見的選擇。 PROPAGATION_SUPPORTS -- 支持當前事務,如果當前沒有事務,就以非事務方式執行。 PROPAGATION_MANDATORY -- 支持當前事務,如果當前沒有事務,就拋出異常。 PROPAGATION_REQUIRES_NEW -- 新建事務,如果當前存在事務,把當前事務掛起。 PROPAGATION_NOT_SUPPORTED -- 以非事務方式執行操作,如果當前存在事務,就把當前事務掛起。 PROPAGATION_NEVER -- 以非事務方式執行,如果當前存在事務,則拋出異常。 PROPAGATION_NESTED -- 如果當前存在事務,則在嵌套事務內執行。如果當前沒有事務,則進行與PROPAGATION_REQUIRED類似的操作。五個隔離級別:ISOLATION_DEFAULT 這是一個PlatfromTransactionManager默認的隔離級別,使用數據庫默認的事務隔離級別.另外四個與JDBC的隔離級別相對應;ISOLATION_READ_UNCOMMITTED 這是事務最低的隔離級別,它充許別外一個事務可以看到這個事務未提交的數據。這種隔離級別會產生臟讀,不可重復讀和幻像讀。

ISOLATION_READ_COMMITTED 保證一個事務修改的數據提交后才能被另外一個事務讀取。另外一個事務不能讀取該事務未提交的數據。這種事務隔離級別可以避免臟讀出現,但是可能會出現不可重復讀和幻像讀。

ISOLATION_REPEATABLE_READ 這種事務隔離級別可以防止臟讀,不可重復讀。但是可能出現幻像讀。它除了保證一個事務不能讀取另一個事務未提交的數據外,還保證了避免下面的情況產生(不可重復讀)。

ISOLATION_SERIALIZABLE 這是花費最高代價但是最可靠的事務隔離級別。事務被處理為順序執行。除了防止臟讀,不可重復讀外,還避免了幻像讀。關鍵詞:1)幻讀:事務1讀取記錄時事務2增加了記錄并提交,事務1再次讀取時可以看到事務2新增的記錄;2)不可重復讀取:事務1讀取記錄時,事務2更新了記錄并提交,事務1再次讀取時可以看到事務2修改后的記錄;3)臟讀:事務1更新了記錄,但沒有提交,事務2讀取了更新后的行,然后事務T1回滾,現在T2讀取無效。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 稷山县| 达拉特旗| 宜兰县| 芦溪县| 鸡泽县| 玉溪市| 攀枝花市| 赫章县| 汉中市| 兰溪市| 营口市| 洛扎县| 长丰县| 米易县| 临清市| 福贡县| 专栏| 保德县| 林甸县| 双辽市| 寿阳县| 中江县| 遂川县| 青冈县| 当雄县| 永安市| 玉门市| 遂宁市| 特克斯县| 五华县| 海城市| 万源市| 同江市| 杨浦区| 建德市| 宁津县| 鸡西市| 克东县| 朝阳区| 龙海市| 西乡县|