ホームページ >Java >&#&チュートリアル >Jackson でのみシリアル化に @JsonIgnore を選択的に適用するにはどうすればよいですか?
シリアル化および逆シリアル化中に機密データを扱う場合、特定のプロパティを送信から除外することが望ましいことがよくあります。 @JsonIgnore アノテーションはこの機能を提供しますが、デフォルトではシリアル化と逆シリアル化の両方に適用されます。シリアル化の場合のみ暗号化を抑制する必要があるシナリオの場合、それを実現する方法は次のとおりです。
Jackson バージョン 1.9 より前では、@JsonIgnore のゲッター メソッドを次のように制限できました。逆シリアル化を有効にし、シリアル化を無効にします。これは、ゲッターにのみ @JsonIgnore アノテーションを付けることを意味します。
以降の Jackson バージョンでは、@JsonProperty アノテーションによりさらなる柔軟性が提供されます。 @JsonIgnore をシリアル化にのみ適用するには:
Jackson の @JsonProperty.Access アノテーションを持つバージョンの場合、別のオプションがあります:
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY) private String password;
これにより、パスワードのシリアル化が許可されますが、逆シリアル化が防止され、効果的にパスワードが保護されます。詳細については、Jackson のドキュメントを参照してください。
以上がJackson でのみシリアル化に @JsonIgnore を選択的に適用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。