Java-将动态JSON映射到DTO
我无法将json数据映射到具有以下负载的DTOJava-将动态JSON映射到DTO,java,spring-mvc,dto,Java,Spring Mvc,Dto,我无法将json数据映射到具有以下负载的DTO "wigData": { "wig": { "0": { "parentWig": "", "wigName": "testing wig 1", "wigStart": "01/08/2017", "wigFromx": "1", "wigToy":
"wigData": {
"wig": {
"0": {
"parentWig": "",
"wigName": "testing wig 1",
"wigStart": "01/08/2017",
"wigFromx": "1",
"wigToy": "123",
"wigEnd": "31/08/2017",
"wigAchievementType": "number"
},
"1": {
"parentWig": "",
"wigName": "testing wig 2",
"wigStart": "01/08/2017",
"wigFromx": "1",
"wigToy": "123",
"wigEnd": "31/08/2017",
"wigAchievementType": "number"
}
}
}
DTO未能映射wig
的有效负载,因为它是从
我已经为这种有效载荷创建了DTO
class WigData {
private Wigs wigs;
// setter getter
}
class Wigs {
private List<Wig> index;
// setter getter
}
class Wig {
private String parentWig;
private String wigName;
private Date wigStart;
private Date wigFromx;
private BigDecimal wigToy;
private String wigAchievementType;
// setter getter
}
但是运气不好,谁能帮我解决这个问题
由于现在无法更改有效负载请查看JSON数组的更多信息。 请尝试使用以下命令:
"wigData": {
"wig": [{
"parentWig": "",
"wigName": "testing wig 1",
"wigStart": "01/08/2017",
"wigFromx": "1",
"wigToy": "123",
"wigEnd": "31/08/2017",
"wigAchievementType": "number"
}, {
"parentWig": "",
"wigName": "testing wig 2",
"wigStart": "01/08/2017",
"wigFromx": "1",
"wigToy": "123",
"wigEnd": "31/08/2017",
"wigAchievementType": "number"
}
]
}
class WigData {
private List<Wig> wig;
// setter getter
}
class Wig {
private String parentWig;
private String wigName;
private Date wigStart;
private Date wigFromx;
private BigDecimal wigToy;
private String wigAchievementType;
// setter getter
}
“wigData”:{
“假发”:[{
“parentWig”:“,
“假发名称”:“测试假发1”,
“wigStart”:“2017年8月1日”,
“wigFromx”:“1”,
“假发玩具”:“123”,
“wigEnd”:“2017年8月31日”,
“wigAchievementType”:“编号”
}, {
“parentWig”:“,
“假发名称”:“测试假发2”,
“wigStart”:“2017年8月1日”,
“wigFromx”:“1”,
“假发玩具”:“123”,
“wigEnd”:“2017年8月31日”,
“wigAchievementType”:“编号”
}
]
}
类数据{
私人名单假发;
//塞特吸气剂
}
阶级假发{
私有字符串parentWig;
私有字符串名称;
私人约会开始;
私人约会;
私人大人物玩具;
私有字符串类型;
//塞特吸气剂
}
查看有关JSON数组的更多信息。
请尝试使用以下命令:
"wigData": {
"wig": [{
"parentWig": "",
"wigName": "testing wig 1",
"wigStart": "01/08/2017",
"wigFromx": "1",
"wigToy": "123",
"wigEnd": "31/08/2017",
"wigAchievementType": "number"
}, {
"parentWig": "",
"wigName": "testing wig 2",
"wigStart": "01/08/2017",
"wigFromx": "1",
"wigToy": "123",
"wigEnd": "31/08/2017",
"wigAchievementType": "number"
}
]
}
class WigData {
private List<Wig> wig;
// setter getter
}
class Wig {
private String parentWig;
private String wigName;
private Date wigStart;
private Date wigFromx;
private BigDecimal wigToy;
private String wigAchievementType;
// setter getter
}
“wigData”:{
“假发”:[{
“parentWig”:“,
“假发名称”:“测试假发1”,
“wigStart”:“2017年8月1日”,
“wigFromx”:“1”,
“假发玩具”:“123”,
“wigEnd”:“2017年8月31日”,
“wigAchievementType”:“编号”
}, {
“parentWig”:“,
“假发名称”:“测试假发2”,
“wigStart”:“2017年8月1日”,
“wigFromx”:“1”,
“假发玩具”:“123”,
“wigEnd”:“2017年8月31日”,
“wigAchievementType”:“编号”
}
]
}
类数据{
私人名单假发;
//塞特吸气剂
}
阶级假发{
私有字符串parentWig;
私有字符串名称;
私人约会开始;
私人约会;
私人大人物玩具;
私有字符串类型;
//塞特吸气剂
}
您使用什么库来反序列化json?杰克逊?你有什么错误?顺便说一下,您错过了Wig
object中的wigEnd
字段,谢谢@amicoderozer,我已经修好了,小姐。是的,我使用的是Jakson,我没有得到任何错误,但是响应没有映射到DTO。请检查我的更新答案,您使用什么库来反序列化json?杰克逊?你有什么错误?顺便说一下,您错过了Wig
object中的wigEnd
字段,谢谢@amicoderozer,我已经修好了,小姐。是的,我使用的是Jakson,我没有得到任何错误,但是响应没有映射到DTO。请检查我的更新答案sirwell,这在我的上下文中是不可能的,先生,我使用的是Json序列化库,它映射了我问题中的有效负载。有什么提示吗,先生?我会检查jquery json序列化并给出另一个答案。但在后端,映射可以像我发布的那样工作。我将研究jquery json序列化,并在几个小时后回复您;序列化json时使用{UseintKeysaArrayIndex:true}。然后使用我提供的解决方案,它应该可以工作,因为它将转换我在回答中给出的数组。解决方案在本页中给出:在我的上下文中,这是不可能的,先生,我使用的是Json序列化库,它映射了我问题中的有效负载。有什么提示吗,先生?我会检查jquery json序列化并给出另一个答案。但在后端,映射可以像我发布的那样工作。我将研究jquery json序列化,并在几个小时后回复您;序列化json时使用{UseintKeysaArrayIndex:true}。然后使用我提供的解决方案,因为它将转换我在回答中给出的数组。该解决方案在本页中给出: