私は叔父の釣り店のために小さな店管理ソフトウェアを書いています。ローカル ネットワーク内の単一のデータベースにアクセスする複数のクライアントをサポートします。現在、データベースへのアクセスを同期する方法を探しています。1 つの解決策は、db アクセスを管理するサーバー プログラムを作成することです。しかし、私はネットワークプログラミングの経験がないので、他の解決策を見つけたいと思っています. 私は次のことを思いつきました:
データベース内のすべてのエントリには、最後に編集された時刻を知らせるタイムスタンプがあります。クライアントがエントリを編集する前に、タイムスタンプを読み取って、エントリが別のクライアントによって変更されているかどうかを確認します。その場合、クライアントはデータベースに書き込みませんが、ユーザーに通知します。ユーザーは、ローカルの変更を変更された db エントリとマージする必要があります。タイムスタンプの読み取り、タイムスタンプのチェック、およびデータベースへの書き込みのプロセスは、単一の jdbc トランザクションとして実装されます。
あなたはどう思いますか?