首先,我建议您将所有字段设为私有,您的字段具有getter和setter。
将响应分离也是一个好主意(?)字段中的dto类名和实际类型命名。
假设响应DTO中的字段名告诉实际的类型,然后像这样做一点重构
Warehouses
到
WarehousesResponse
和
Warehouse
到
WarehouseResponse
.
然后关于“数组”,从JSON中剪辑:
"warehouse": {
"PRiyA": "0",
"WHID": "1 ALABO",
"PRixA": ""
}
这不是名为Warehouse的数组,因此它不会反序列化为
List
很好地。
它是一个类型的对象
仓库
(这就是区分仓库响应的原因,为了清楚起见,参见
Map
稍后)这是类型为的对象中名为Warehouse的字段
仓库响应
(假设您同意命名策略)。
一种选择是创建类,如:
@Getter @Setter
public class Warehouse {
private String PRiyA;
private String WHID;
private String PRixA;
}
改变仓库的反应,比如:
@Getter @Setter
public class WarehouseResponse {
// Change the list to warehouse object as it is in response
// private List<WarehouseField> warehouse;
private Warehouse warehouse;
private String url;
private Date date = new Date();
}
通常也可以简单地(例如)将键/值对设置为
Map<String,String>
所以在这种情况下
仓库响应
S也可以
private HashMap<String, String> warehouse
没有阶级
仓库
需要。但是我不能让它和我的
Moxy
知识。
因此,我介绍了如何反序列化(和序列化)您在JSON中给出的格式,但我不知道这是否适合您的可能。
XML
需要