2012-01-13 21 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

?どのようなエラーが出ますか?このエラーを引き起こすコードは何ですか? –

+0

詳細と詳細をご記入ください。 – Gray

+0

タイトルのクラス: 'org.hibernate.type VersionType'。そして、私はちょうどそれを理解していないdonot、何を引き起こしていない... – fjjiaboming

答えて

1

  • 最後のライターが勝利を
  • とき、彼はかもしれ編集は、彼が使用してから離れて他のすべてをロックし、クライアントのデータをロードします
  • すべてのクライアントは読み書きはできますが、読み込んだ状態とは異なる状態を上書きしようとするとエラーが発生します(楽観的同時実行性)

バージョン列は、3番目の戦略の実装です。エラーが発生した場合は、データを同時に変更しようとする2つのクライアントがいる可能性があります。

(そうでないかもしれない最高の)how to implement optimisticこのjavadocは上にあるどのようなクラス

further reading

nice answer when to use what

関連する問題