我有一个接收数据类型为json或xml的应用程序,并且我正在寻找一个库,该库允许我从json解析为Map,也可以从xml解析为Map(和viseversa)。
我目前使用gson和xstream库,但是我更希望依靠一个可以完成这些任务的库。
如果它可能很简单并且行得通,例如我仅使用gson:
Gson gson = new Gson();
String request = "{'name':'anyName', 'age':'anyAge'}";
Map<String, String> jsonMapped = gson.fromJson(request, Map.class);
我知道这个问题已经回答了,但是答案很旧,应该有一个以更简单的方式工作的库。
答案 0 :(得分:0)
我知道Jackson现在可以同时执行JSON和XML(https://github.com/FasterXML/jackson-dataformat-xml)。如果您不愿意使用可以同时执行这两个操作的单个库,那么可能值得一试。
如果可以使用单独的XML库并且正在寻找简单的东西。可能我建议使用SimpleXml:
public class MyObject {
String name;
}
final SimpleXml simple = new SimpleXml();
final MyObject object = simple.fromXml("<myobject><name>test</name></myobject>");
System.out.println(object.name);
将输出:
test
从Maven Central:
<dependency>
<groupId>com.github.codemonstur</groupId>
<artifactId>simplexml</artifactId>
<version>1.4.0</version>
</dependency>
该库将无法直接反序列化为Map,但是您始终可以将其包装在一个类中。