歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Java中事務的屬性ACID

Java中事務的屬性ACID

日期:2017/3/1 9:30:30   编辑:Linux編程

原子性(ATOMICITY):
一個事務要被完全的無二義性的做完或撤消。在任何操作出現一個錯誤的情況下,構成事務的所有操作的效果必須被撤消,數據應被回滾到以前的狀態。

一致性(CONSISTENCY):
一個事務應該保護所有定義在數據上的不變的屬性(例如完整性約束)。在完成了一個成功的事務時,數據應處於一致的狀態。換句話說,一個事務應該把系統從一個一致-狀態轉換到另一個一致狀態。舉個例子,在關系數據庫的情況下,一個一致的事務將保護定義在數據上的所有完整性約束。

隔離性(ISOLATION):
在同一個環境中可能有多個事務並發執行,而每個事務都應表現為獨立執行。串行的執行一系列事務的效果應該同於並發的執行它們。這要求兩件事:

在一個事務執行過程中,數據的中間的(可能不一致)狀態不應該被暴露給所有的其他事務。
兩個並發的事務應該不能操作同一項數據。數據庫管理系統通常使用鎖來實現這個特征。

持久性(DURABILITY):
一個被完成的事務的效果應該是持久的。

Copyright © Linux教程網 All Rights Reserved