1. ホーム
  2. java

ジャクソン 財産がなくなった場合はどうなるのでしょうか?

2023-11-19 14:18:28

質問

コンストラクタのパラメータに @JsonProperty を使用してアノテーションしますが、Json でそのプロパティが指定されていない場合はどうなりますか? コンストラクタはどのような値を取得するのでしょうか?

null値を持つプロパティと、JSONに存在しないプロパティを区別するにはどうすればよいですか?

どのように解決するのですか?

優れた回答をまとめた プログラマ ブルース および StaxMan :

  1. コンストラクタから参照される欠落しているプロパティには、デフォルト値が割り当てられる Javaで定義されているように .

  2. セッターメソッドを使用することで、暗黙的に設定されるプロパティと明示的に設定されるプロパティを区別することができます。セッターメソッドは、明示的に値が設定されたプロパティに対してのみ呼び出されます。セッターメソッドは、プロパティが明示的に設定されたかどうかをブーリアンフラグを使って追跡することができます(例えば isValueSet ).