簡體   English   中英

用Jackson嵌套JSON到Java映射

[英]Nested JSON to Java Mapping with Jackson

我有一個像這樣的json結構:

   [
       {
        "param1": "one",
        "param2": "two",
        "nestedStruct1": {
            "param1": "one",
            "param2": "two",
            "param3": "three"
        },
    }
]

我們使用Jackson來執行json-to-java對象處理。 我不確定如何創建支持此嵌套json構造的相應Java類。

根據以下內容創建兩個單獨的類是否足夠:

public class Outside {
    private String param1 = null;
    private String param2 = null;
    private Inside inside = new Inside();

    // appropriate getters and setters  
}

public class Inside {
    private String param1 = null;
    private String param2 = null;
    private String param3 = null;

    // appropriate getters and setters
}

任何見解都表示贊賞。 謝謝。

這看起來像一個JSON數組(很好,它的格式不正確),並且可以由ObjectMapper直接將其單個元素從以下類結構中反序列化。 我們一直在使用這種嵌入式結構。 元素必須是公共的(或具有相應的getter / setter),或者,如果我沒記錯的話,至少要受保護。 請注意,您的嵌入式結構的字段名稱必須與JSON中的名稱相對應:

public class Element {
  public String param1;
  public String param2;
  public Embedded nestedStruct1 = new Embedded();

  public static class Embedded {
    public String param1;
    public String param2;
    public String param3;
  } 
}

整個數組可以從列表List<Element>序列化。

暫無
暫無

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

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