-
事務(wù)不考慮隔離性,引發(fā)的安全問題查看全部
-
事務(wù)管理器Platform TransactionManager重要查看全部
-
Spring事務(wù)管理高層抽象主要有3個接口: 1.platform TransactionManager 平臺事務(wù)管理,真正管理事務(wù)的接口(事務(wù)的提交,回滾等操作) 2.TransactionDefinition 事務(wù)定義信息(隔離、傳播、超時、只讀) 3.TransactionStatus 事務(wù)具體運行狀態(tài) PlatformTransactionManager 根據(jù) TransactionDefinition 進行事務(wù)管理,管理過程中事務(wù)存在多種狀態(tài),每個狀態(tài)信息通過 TransactionStatus 表示查看全部
-
事務(wù):指的是邏輯上的一組操作,這組操作要么全部成功,要么全部失敗 事務(wù)的四大特性: 原子性:指的是事務(wù)是一個不可分割的工作單位,事務(wù)中的操作要么都發(fā)生,要么都不發(fā)生; 一致性:指的是事務(wù)前后數(shù)據(jù)的完整性必須保持一致; 隔離性:指的是多個用戶并發(fā)訪問數(shù)據(jù)庫時,一個用戶的事務(wù)不能被其他用戶的事務(wù)所干擾,多個并發(fā)事務(wù)之間數(shù)據(jù)要相互隔離(通過在數(shù)據(jù)庫中設(shè)置隔離級別); 持久性:指的是一個事務(wù)一旦被提交,它對數(shù)據(jù)庫中數(shù)據(jù)的改變是永久性的,即使數(shù)據(jù)庫發(fā)生故障也不應(yīng)該對其有任何影響。查看全部
-
事務(wù)的特性-持久性 一個事務(wù)一旦被提交,他對數(shù)據(jù)庫的改變就是永久性的查看全部
-
多個事務(wù)操作同一條數(shù)據(jù)示意圖查看全部
-
事務(wù)的特性-隔離性 問題:多個事務(wù)可能會同時針對同一條數(shù)據(jù)進行修改操作 解決:設(shè)置數(shù)據(jù)庫事務(wù)的隔離級別,行級鎖查看全部
-
事務(wù)的特性-一致性 轉(zhuǎn)賬之前,張三的賬戶2000元,李四的賬戶1000元,總共3000元 轉(zhuǎn)賬之后,張三的賬戶1000元,李四的賬戶2000元,總共3000元 轉(zhuǎn)賬前后,總金額保持一致查看全部
-
事務(wù)的特性-原子性 將所需要的操作放在事務(wù)中,這樣,操作要么成功,要么失敗查看全部
-
事務(wù)的特性查看全部
-
事務(wù)形象示意圖查看全部
-
什么是事務(wù)查看全部
-
Spring事務(wù)管理查看全部
-
TransactionStatus接口用來記錄事務(wù)的狀態(tài) 該接口定義了一組方法,用來獲取或判斷事務(wù)的相應(yīng)狀態(tài)信息. 平臺事務(wù)管理器(PlatformTransactionManager)會根據(jù)TransactionDefinition中定義的事務(wù)信息(包括隔離級別、傳播行為)來進行事務(wù)的管理,在管理的過程中事務(wù)可能產(chǎn)生了保存點或事務(wù)是新的事務(wù)等情況,那么這些信息都會記錄在TransactionStatus的對象中.查看全部
-
事務(wù)的傳播行為:主要是解決業(yè)務(wù)層方法之間的相互調(diào)用的問題 事務(wù)的傳播行為有七種,又分為三類: 第一類共同點:如果 A 方法中有事務(wù),則調(diào)用 B 方法時就用該事務(wù),即:A和B方法在同一個事務(wù)中。 PROPAGATION_REQUIRED:如果 A 方法中沒有事務(wù),則調(diào)用 B 方法時就創(chuàng)建一個新的事務(wù),即:A和B方法在同一個事務(wù)中。 PROPAGATION_SUPPORTS:如果 A 方法中沒有事務(wù),則調(diào)用 B 方法時就不使用該事務(wù)。 PROPAGATION_MANDATORY:如果 A 方法中沒有事務(wù),則調(diào)用 B 方法時就拋出異常。 第二類共同點:A方法和B方法沒有在同一個事務(wù)里面。 PROPAGATION_REQUIRES_NEW:如果 A 方法中有事務(wù),則掛起并新建一個事務(wù)給 B 方法。 PROPAGATION_NOT_SUPPORTED:如果 A 方法中有事務(wù),則掛起。 PROPAGATION_NEVER:如果 A 方法中有事務(wù),則報異常。 第三類:如果 A 方法有的事務(wù)執(zhí)行完,設(shè)置一個保存點,如果 B 方法中事務(wù)執(zhí)行失敗,可以滾回保存點或初始狀態(tài)。 PROPAGATION_NESTED :如果當(dāng)前事務(wù)存在,則嵌套事務(wù)執(zhí)行 @重點的三種:PROPAGATION_REQUIRED, PROPAGATION_REQUIRES_NEW, PROPAGATION_NESTED。查看全部
舉報
0/150
提交
取消