Ich möchte eine Eigenschaft zu einer anderen Eigenschaft deserialisieren, wenn es null ist.Jackson: Deserialize Eigenschaft zu einer anderen Eigenschaft, wenn es Null ist
Sagen wir, ich habe eine Klasse:
public class User {
private String login;
private String nickname;
// getters, setters
}
Jedes Mal nickname
als null kommt würde ich login
als Standardwert zurückkommen.
F: Gibt es eine allgemeine Möglichkeit, dies mit Jackson Deserializers zu erreichen?
Hinweis: Es gibt eine Zwangs vorwärts Weg, Getter wie dies das Problem lösen:
public String getNickname() {
return nickname == null ? login : nickname;
}
Aber es ist nicht elegant, und ich will keine Logik in meine DTO Objekte setzen .
Vielen Dank für die Antwort. Dies wird nicht funktionieren, da dieser Code in ein json serialisiert wird, aber ich muss es zu Java-Objekt deserialisieren. Aber ich habe die Idee verstanden. Leider ist es für mich nicht anwendbar, ich hätte gerne eine allgemeine Lösung. –
@OleksandrShpota In der gleichen Weise können Sie benutzerdefinierte die Deserialisierung –