シリアル化のための選択的な @JsonIgnore
JSON シリアル化/逆シリアル化フレームワークを使用する場合、特定の操作に対して特定のフィールドを選択的に無視すると便利な場合があります。パスワードの場合、多くの場合、シリアル化された出力からパスワードを除外しつつ、逆シリアル化を許可することが望ましいことがよくあります。
提供されたコンテキスト
シリアル化されているユーザー オブジェクトとdeserialized には「パスワード」プロパティがあります。 @JsonIgnore は、シリアル化された JSON 応答に含まれないようにするために、このプロパティに適用されています。ただし、これによりパスワードの逆シリアル化もブロックされ、ユーザーのサインアップが不可能になります。
ソリューション
Jackson を内部的に使用する Spring JSONView は、シリアル化を制御するためのさまざまなメソッドを提供します。逆シリアル化。この特定のシナリオでは、2 つのアプローチが推奨されます。
Jackson Versions < 1.9
Jackson Versions >= 1.9
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY) private String password;
追加メモ
このソリューションは、逆シリアル化を許可しながら、シリアル化の選択的除外を特にターゲットにしています。逆シリアル化マスキングが必要な他のシナリオでは、別のアプローチが必要になる場合があります。
以上が逆シリアル化を許可しながら、JSON シリアル化中にフィールドを選択的に無視するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。