2012-01-13 51 views
-1

我發現我的表有一個版本列,所以冬眠有一個錯誤。 但它提供了什麼功能? 我閱讀文檔,但不太明白。什麼是'org.hibernate.type VersionType'函數?

的Javadoc:

/** 
* Additional contract for types which may be used to version (and optimistic lock) data. 
* 
* @author Gavin King 
* @author Steve Ebersole 
*/ 

感謝。當多個客戶端要更新,您可以選擇之間的相同數據

+2

什麼類的javadoc這樣嗎?你會得到什麼錯誤?導致此錯誤的代碼是什麼? – 2012-01-13 11:59:01

+0

請提供更多細節和細節。 – Gray 2012-01-13 16:06:18

+0

標題中的類:'org.hibernate.type VersionType'。而我只是不理解它,而不是引起什麼...... – fjjiaboming 2012-04-28 11:43:08

回答

1

  • 最後寫入者
  • 時,他可能編輯,他鎖定所有其他人遠離使用客戶端負載數據相同的數據,直到他釋放它(悲觀)他已閱讀
  • 所有客戶端可以讀/寫,但得到錯誤,如果試圖重寫狀態,這是從不同(樂觀併發)

版本列是第三個策略的實現。如果遇到錯誤,你有兩個試圖同時改變數據的客戶端。

how to implement optimistic(也許不是最好的)

further reading

nice answer when to use what