我試圖用重試攔截器實現基本的樂觀鎖定機制。在jpa/spring/hibernate中簡單的樂觀鎖問題
所以事情是有一個對象測驗與屬性respondCount。如果在測驗更新期間拋出樂觀的鎖定異常,則將再次從重試攔截器調用相應的更新方法。
的事情是,什麼是不正確的,因爲重試的方法具有相同的版本號號每一次,正因爲如此它會不管失敗的交易。
版本:10
過程答: 開始更新測驗,10個 過程B: 開始更新測驗,10版 過程B: 完成更新測驗,11版 過程答: 樂觀例外拋出提出更新競猜,重試進程A 重試的方法中的版本始終爲10
我能做些什麼呢?它應該爲了增加自動版本,以成功交易
計數也需要鎖定的 - 否則兩個客戶端可以讀取「1」,然後寫兩個「2」時,正確的計數爲「3」。 – tgdavies 2011-03-01 21:35:28