JPAロック(楽観的および悲観的)の原則を理解しましたが、エンティティの管理者、クエリなどに適用するすべてのロックは常にサーバー側にあります。すべてのEJBはサーバー上に配置されているため、それらによって使用されるトランザクションもサーバー上でロックされます。WebコンポーネントでJPAロックを使用する
あなたのeコマースウェブサイトのコード担当者は、自分のデータを変更したいとします。ユーザは、クライアント(例えば、フェイスレット)の変更を記入し、サーバに送信して提出し、サーバがロックを取得する。しかし、管理者が初期読み込みとロック取得前の間にcostumersデータを変更した場合はどうなりますか?これにより、読み込みがダーティーになる
ロック機構をどのようにWeb層に拡張できますか?
私はWeb上でオプションを見つけることはできませんでしたが、JPAの現在のロックAPIはそれほど役に立たないでしょうか?
ありがとうございますが、私は楽観的なロックの概念に精通しています。 JPAが各トランザクションの最後に変更をチェックするということです。さて、これは、ダーティリードに対する保護を提供しますが、トランザクションの時間だけです。他の誰も同じビットのデータを同時に変更しないようにトランザクションがないので、クライアントがブラウザのデータを変更している場合、このセキュリティは存在しません。 – Wecherowski