所以,我有一個設計問題:我有幾個進程正在更新我的數據庫。舉個例子,設想一個銀行系統,我正在記錄從一個賬戶到另一個賬戶的轉賬。在這種情況下,我必須從源帳戶中扣除轉帳金額,並將相同金額作爲單筆交易記入目標帳戶。JPA從多進程寫入單個數據庫
我想確保沒有任何條件可以破壞我的交易,所以我最初考慮的是對源帳戶和目標帳戶進行悲觀鎖定,同時執行計算並提交更改。從我在網上閱讀的有關JPA的文章中,似乎不容易支持悲觀鎖定(至少不是直接)。
任何人都可以給我一個其他方式的想法,我可能能夠確保我的交易在多個流程中的完整性?
任何幫助/指針非常感謝。
謝謝...
--Steve
是的,我曾看過樂觀鎖定,但我的印象是客戶端代碼必須ch eck版本。如果您說在JPA提供程序本身進行合併/更新操作時會進行此檢查(從而避免客戶端必須檢查的競爭條件),那麼這實際上是一種更好的方法。 顯然,我有樂觀鎖定的方法的不同的誤解...... 感謝 --Steve – Steve 2009-07-10 19:31:06