オブジェクトのシリアル化と逆シリアル化に Jackson を使用しています。問題は、フィールドを表示したい場合と表示したくない場合があることです。
実際には @JsonIgnore を使用して、必要のないときにプロパティの出力を回避しています。必要なときは、プロパティを無効にしています
mapper.getSerializationConfig().disable(SerializationConfig.Feature.USE_ANNOTATIONS);
ただし、これにより、必要な他の注釈も無効になります。
必要な結果を得るにはどうすればよいですか? ビューを使用していますか? 例はありますか?
私が欲しいものを理解するためのちょっとしたポジョ:
class User {
private String username;
@JsonIgnore
private String password;
// getter setter
}
writeToDB() {
mapper.getSerializationConfig().disable(SerializationConfig.Feature.USE_ANNOTATIONS);
mapper.writeValueAsString(user);
}
REST API を使用すると、パスワードなしでユーザー名を取得できます (JsonIgnore のおかげです)。