簡體   English   中英

將嵌套的JSON對象解組為通用Java對象

[英]Unmarshal nested JSON object to generic Java object

我正在將Jersey(2.5.1)與JAXB一起用於RESTish API,以將JSON封送至POJO或從POJO封送JSON。 客戶端將通過以下請求進行POST:

{
   "type":"myevent",
   "data":{
       "id":"123",
       "count":2
    }
}

我有一個'Event'類,其中包含類型字符串和數據有效載荷。

@XmlRootElement
public class Event {

    @XmlElement public String type;
    @XmlElement public JSONObject data;
    ...
}

“數據”有效載荷是一個JSON對象,但是我不知道該對象的類型或“模式”是什么。 我所知道的是JSON。 上面我有一個JSONObject類型,但這只是一個例子,也許這需要是Object? 地圖? 還有嗎

我希望能夠獲取“數據”有效負載並將其作為JSON保留在其他地方。

我曾考慮過使用String作為數據有效負載,但是任何API客戶端都需要對此進行編碼,並且在傳遞之前需要對其進行解碼。

有什么建議么?

我通常在后端使用字符串,然后

    JSONObject json = new JSONObject(s); 

會從s創建一個json obj(您不需要解碼)。

在客戶端,我相信您只需要對字符串應用類似replaceAll函數來逃脫“

暫無
暫無

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

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