@JsonIgnore による JSON シリアル化と逆シリアル化の制御
Spring JSONView アプリケーションでは、プロパティのシリアル化と逆シリアル化の方法をカスタマイズするのが難しい場合があります。一般的なシナリオは、シリアル化中にハッシュ化されたパスワードなどの機密データを除外しながら、逆シリアル化できるようにしたい場合です。
これを実現するには、パスワード プロパティに @JsonIgnore アノテーションを使用します。ただし、これによりプロパティの逆シリアル化が妨げられる可能性もあり、既存のパスワードを持たないユーザーのサインアップが困難になります。
解決策は、使用されている Jackson のバージョンによって異なります。 1.9 より前では、@JsonIgnore はゲッター メソッドでのみ使用できました。新しいバージョンでは、次のアノテーションを追加します:
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY): セッター メソッドのこのアノテーションはシリアル化を許可しますが、逆シリアル化をブロックします。
または、 @JsonProperty の READ_ONLY アクセス タイプ引数を使用することもできます。
@JsonProperty(access = JsonProperty.Access.READ_ONLY) private String password;
これらのアノテーションにより、パスワード プロパティは JSON 変換中にのみシリアル化されますが、オブジェクトの作成中には逆シリアル化できることが保証されます。
これらの手法に従うことで、JSON を選択的に制御できます。機密プロパティのシリアル化と逆シリアル化により、Web アプリケーションに柔軟性とセキュリティを提供します。
以上がSpring JSONView で機密データの JSON シリアル化と逆シリアル化を制御するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。