簡體   English   中英

Jackson序列化和@JsonValue:返回默認行為

[英]Jackson serialization and @JsonValue : back to the default behavior

我有一個簡單的POJO:

public class Test {

    private String id;
    private boolean asString;

    // getters and setters

    @JsonValue
    public Object getValue() {
        if (asString) {
            return id;
        }

        // I want to use the default behavior of Jackson but i don't know what to do here
    }
}

如您所見,我正在嘗試使用@JsonValue進行以下行為:

  • 如果asStringtrue ,我想將對象序列化為一個簡單的字符串。
  • 如果asStringfalse ,則我想使用Jackson的默認行為來序列化我的對象。 但是我不知道該怎么做。

我也嘗試制作一個自定義的序列化程序,但是我無法到達Jackson的“默認序列化程序”並進行調用。

我怎樣才能做到這一點? 我想在一定條件下將對象序列化為字符串,但是如果需要,我想返回Jackson的默認行為。

您可以為此類編寫一個自定義解串器,該類將檢查asString ,如果為false,則其本身將調用默認的jackson解串器。

我如何從Jackson的自定義解串器中調用默認解串器,有一個很好的答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM