[英]Deserialize date with PagedResources/embedded object. Jackson. Spring
[英]Jackson. Deserialize missing properties as empty Optional<T>
假設我有一個這樣的課程:
public static class Test {
private Optional<String> something;
public Optional<String> getSomething() {
return something;
}
public void setSomething(Optional<String> something) {
this.something = something;
}
}
如果我反序列化這個 JSON,我會得到一個空的 Optional:
{"something":null}
但是如果缺少屬性(在這種情況下只是空的 JSON),我會得到 null 而不是Optional<T>
。 我當然可以自己初始化字段,但我認為最好有一種機制來處理null
和缺失的屬性。 那么有沒有辦法讓傑克遜將缺失的屬性反序列化為空的Optional<T>
?
Optional 並不是真的要用作字段,而是更多地用作返回值。 為什么沒有:
public static class Test {
private String something;
public Optional<String> getSomething() {
return Optional.ofNullable(something);
}
public void setSomething(String something) {
this.something = something;
}
}
對於沒有 getter/setter 的解決方案,請確保像這樣初始化something
:
public Optional<String> something = Optional.empty();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.