単純な質問ですが、明確な解決策を見つけて数日を無駄にしました.
私は春の jdbc テンプレートを DAO レイヤーとして使用し、mssql サーバー 2005 をデータベースとして使用しており、注文入力システムがあります。現在、システムに 5 人以上の人がいると、非常に多くのデッド ロック シナリオが発生します。他の人が既存の注文を更新している間に新しい注文を作成しようとすると、ロックが発生するようです。同じテーブルに対する挿入ステートメントと更新ステートメントの間で競合が発生しているようです。
私はこれを修正するためにいくつかのことをしましたが、どれもうまくいきませんでした。そこで、Java.util.semaphore または Lock を導入してスレッドの同時アクセスを制御するか、同期化されたメソッドまたはブロックを使用することを考えています。
これについてどう思いますか?データベースサーバーでこれを処理するより良い方法はありますか?
ありがとう。