複数のユーザーが同時にログインし、全員が 1 つのテーブルにアクセスしてレコードを挿入できる JSP アプリを作成しました。
挿入が完了する前にページに表示したい (すべてのユーザーに対して) 挿入されている合計レコードの実行中のカウンターが必要です (挿入は、ユーザーが [送信] ボタンを押すと行われます..
では、もう少し詳しく説明してみましょう。user_a がログインします。挿入ページで、レコード 1 を挿入すると通知されます。[送信] を押すと、レコードが挿入されます。user_b がログインすると、挿入ページで、新しいレコードをテーブル カウンターに送信するとレコード 2 が挿入されることがわかり、カウンターが 2 にジャンプします。
問題は、ユーザーが挿入を行う前にカウンターを表示することです (そのため、unique_id を返すことができません)。
挿入が完了する前に最後のunique_idをフェッチして1を追加できることはわかっていますが、2番目のユーザーが同時にレコードを挿入する可能性があることを知って、そのレコードを予約するにはどうすればよいですか同じ unique_id を取得して 1) を追加すると、両方のユーザーが同じ番号になります。また、ユーザーが挿入を送信しない場合、その数は増加してはなりません...そのため、カウンタータイプのものはほとんどロールバックします。
Q:ユーザーが入力しているレコードの数がわかるように、現在テーブルにある合計レコードを表示するには、どのような戦略を使用できますか? (必要に応じてDBを変更できます。)コードを提供するだけでなく、これを達成する方法のアイデアを本当に探しています。