2011-11-29 148 views
1

我有一個休息服務返回一些數據。我使用Restlet客戶端API如下所示訪問此服務。正如你所看到的,它返回org.json.JSONObject。有沒有簡單的方法將其映射到域對象(可能通過註釋?),還是我必須編寫代碼來創建域對象?將JSONObject轉換爲域對象的最佳方法是什麼?

Representation entity = new ClientResource(uri).get(); 
JSONObject json = new JsonRepresentation(entity).getJsonObject(); 

回答

1

可能是你可以從Gson庫,有你需要的功能發揮:

// Convert JSON into Java object  
SomeObj obj = gson.fromJson(jsonObjStr, SomeObj.class) 

你可以閱讀更多here...

1

雖然有體面的API爲Java數據結構之間輕鬆映射例如,從JSONObject到你喜歡的數據結構,因爲傳入的數據格式是JSON,所以我更願意只使用良好的JSON到/來自Java的API,如Jackson。取決於首選的轉換細節,解決方案可能只是一個具有這種API的簡單代碼行。

相關問題