私はJavaWebアプリを持っています。これは、従業員のレコードを取得して、奇妙なことに「EmployeeRecordDataHolder」と呼ばれる自家製のデータホルダーオブジェクトに格納します。
更新プロセスの開始時にEmployeeRecordDataHolderのコピーを作成して、データがどのように変更されたかをレポートするための比較を実行できるようにします。
メンバーデータへの元のデータとコピー共有の参照でいくつかの問題が発生しました。その結果、元のデータが更新されないままになりませんでした。
私はもともと、HashMapを介してデータベースからデータを取得します。HashMap get()から元のオブジェクトとコピーの両方にデータを入力した場合、2つのオブジェクトは引き続きデータへの同じ参照を共有するため、1つのオブジェクトのデータを変更すると、コピーのデータも変更されるという状況になりますか?
HashMapを使用して元のオブジェクトにデータを入力し、コピーのすべてのセッターの元のすべてのゲッターを呼び出してコピーを作成した場合はどうなりますか?例:
copyDataHolderObj.setSomePieceOfData( originalDataHolderObj.getSomePieceOfData() );
このメソッドは、互いに独立して変更できる2つのオブジェクトになりますか?
よろしくお願いします
スティーブ