我正在发送以下请求(使用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.段 3.段2 4.状态
如何创建PojoClass以便自动映射这些字段
所以我的PojoClass基本上应该是什么样子?
ResponseEntity<PojoClass> response = restTemplate.exchange(url, HttpMethod.GET, request, PojoClass.class);
答案 0 :(得分:2)
我建议您使用http://www.jsonschema2pojo.org/之类的网站。在这里,您可以在右侧面板上选择许多选项,并调整要从JSON模式获取的POJO。
答案 1 :(得分:0)
您的PojoClass必须遵循您正在接收的JSON的结构,并具有您感兴趣的字段(或所有字段)。
对于第一堂课:
ol.inherits
然后,为客户字段创建一个Customer类,并为其余字段创建更多类:
public class PojoClass {
private Customer customer;
private String status;
...
}
答案 2 :(得分:0)
创建自定义类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>(){
});