JDBC Transaction 理解

1、Transaction 事務特性:

事務是併發控制的單元,是用戶定義的一個操作序列。這些操作要麼都做,要麼都不做,是一個不可分割的工作單位。通過事務將邏輯相關的一組操作綁定在一起,以便服務器 保持數據的完整性。事務通常是以begin transaction開始,以commit或rollback結束。Commint表示提交,即提交事務的所有操作。具體地說就是將事務中所有對數據的更新寫回到磁盤上的物理數據庫中去,事務正常結束。Rollback表示回滾,即在事務運行的過程中發生了某種故障,事務不能繼續進行,系統將事務中對數據庫的所有已完成的操作全部撤消,滾回到事務開始的狀態。

     原子性(Atomic) 對數據的修改要麼全部執行,要麼全部不執行。

  一致性(Consistent) 在事務執行前後,數據狀態保持一致性。

  隔離性(Isolated) 一個事務的處理不能影響另一個事務的處理。

  持續性(Durable) 事務處理結束,其效果在數據庫中持久化。

2、JDBC事務:

  JDBC 事務是用 Connection 對象控制的。JDBC Connection 接口( java.sql.Connection )提供了兩種事務模式:自動提交和手工提交。 java.sql.Connection 提供了以下控制事務的方法:

     public void setAutoCommit(boolean)
  public boolean getAutoCommit()
  public void commit()
  public void rollback()

使用 JDBC 事務界定時,您可以將多個 SQL 語句結合到一個事務中。JDBC 事務的一個缺點是事務的範圍侷限於一個數據庫連接。一個 JDBC 事務不能跨越多個數據庫。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章