[英]Map Complex Json to Pojo Class
我正在發送以下請求(使用Spring Boot)
ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.GET, request, String.class);
響應是json對象(我在json對象中省略了很多字段)
{
"customer": {
"id": 100,
"ci": {
"lDb": "11",
"localId": "1"
},
"cusdata": {},
"rating": {
"id": 3140,
"dateTime": "2019-09-21 06:45:41.10",
"rawData": {
"seg": "XYZ",
"seg2": "XYZ",
"et": "XYZ_CORP",
"CountryCodes": [
"IN"
],
"doBusiness": "2017-09-20"
],
...
....
...
...
"status": "SUCCESS"
}
我需要將以下字段映射到Pojo類
1.localId 2.seg 3.seg2 4.status
我如何創建PojoClass以便自動映射這些字段
所以基本上我的PojoClass應該是什么樣子?
ResponseEntity<PojoClass> response = restTemplate.exchange(url, HttpMethod.GET, request, PojoClass.class);
我建議您使用http://www.jsonschema2pojo.org/之類的網站 。 在這里,您可以在右側面板上選擇許多選項,並調整要從JSON模式獲取的POJO。
您的PojoClass必須遵循您正在接收的JSON的結構,並具有您感興趣的字段(或所有字段)。
對於頭等艙:
public class PojoClass {
private Customer customer;
private String status;
...
}
然后,為客戶字段創建一個Customer類,並為其余字段創建更多的類:
public class Customer {
public String id;
public CI ci;
public CustData custData;
...
}
創建一個自定義類PojoClass
public class PojoClass {
private Integer id;
private Object ci;
private Object cusdata;
private Object rating;
private Object status;
}
ResponseEntity<PojoClass> responseEntity = restTemplate.exchange(url,HttpMethod.GET,request,new ParameterizedTypeReference<PojoClass>(){
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.