2

テーブルの主キーを含む永続オブジェクトの更新されたフィールドがほとんどないユースケースがあります。この場合、これらのフィールドのみで行を更新したいと考えています。休止状態はそのままではこれに対する解決策を提供しないことがわかったので、リフレクションを使用してオブジェクトの null 以外のすべてのフィールドを決定し、これに基づいて更新クエリを作成し、最終的にそれを実行するメソッドを自分で作成しました。私のアプリケーションは、Spring フレームワークを使用して作成されています。今のところ、私が行った方法は、セッションオブジェクト、主キー、主キー値、およびテーブル名を取る更新メソッドを持つ別のユーティリティクラスを持っていることです。これは、このユースケースを実装する良い方法ですか? これを改善するための提案はありますか?

4

2 に答える 2

0

あなたの質問は私には明確ではありません。更新の場合は、選択してから保存できます。または、そのエンティティを作成して保存します (ここでは主キーが必須です)。更新したいので、最初のアプローチを使用できます。ここで必須フィールドを気にする必要はありません。

于 2013-10-26T10:04:16.797 に答える
0

ほとんどの場合、永続化されるエンティティの null 許容フィールドにデフォルト値が保存される理由の 1 つは、エンティティの POJO でプリミティブ データ型を使用しているためです。
プリミティブを使用していないかどうかを確認してください。はいの場合は、それぞれのラッパー クラスに切り替えてから保存します。保存または更新後、コミット時にデータベースに null を渡す必要があります。
これで問題が解決することを願っています:)

于 2013-12-27T11:00:48.850 に答える