XML を JAXB pojo に読み込んでおり、フィールドをエンティティ pojo にマージしたいと考えています。ただし、XML の値が null の場合 (つまり、値が XML に存在しない場合)、既存の値を上書きしたくありません。だから今、私は次のような長いコードセットを持っています:
if (addressDetails.getNAME1() != null) {
org.setName1(addressDetails.getNAME1());
}
if (addressDetails.getNAME2() != null) {
org.setName2(addressDetails.getNAME2());
}
if (addressDetails.getNAME3() != null) {
org.setName3(addressDetails.getNAME3());
}
これは醜く、うるさく、Sonar はサイクロマティックな複雑さを訴えます。これをどのように行うつもりですか?頭に浮かぶこと:
- リフレクションを使用する util (遅く、タイプ セーフではない)
- エンティティ クラスへのラッパー クラス (詳細、ボイラープレート)
私は読みやすく、余分なコードをあまり使わないものを目指しています。