我正在尝试使用Spring Boot实现一个简单的Restful Web Service。
当前,我想将XML文件解析为Json对象,并将其作为响应消息返回。但是,我目前在定义返回的JSON对象的结构时遇到问题,因为它可能因我解析的XML文件而异。
这是我尝试返回的XML解析为Json的示例。
{
"App": {
"CR": {
"Product": {
"PRequest": {
"MF": "dfl3",
"Pri": "0",
"PC": "age",
"PCode": "Hca"
}
}
},
"SD": {
"SDF": {
"PRP": {
"_cCao": "str1234",
"_cSao": "str1234",
"_dao": "2012-12-13",
"_dCao": "2012-12-13",
"_dr": "2012-12-13",
"_nIDta": "str1234",
"_no": "1234"
}
}
}
}
}
有没有办法返回仅在运行时定义结构的动态Json对象?
答案 0 :(得分:2)
您可以使用org.json
轻松完成此操作:
String xmlString = "<note><to>Bill</to><from>Ben</from><body>Hello!</body></note>";
JSONObject jsonObject = XML.toJSONObject(xmlString);
String jsonString = jsonObject.toString();
// Evaluates to:
// {"note":{"from":"Ben","to":"Bill","body":"Hello!"}}
这会将XML字符串转换为JSONObject,您可以随后对其进行操作或将其转换为JSON字符串。
如果您使用的是Maven,则可以通过将其添加到org.json
中来为pom.xml
添加依赖项:
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20180813</version>
</dependency>