将java对象同时转换为XML和JSON不会产生一致的输出
我试图将ArrayList中的java对象转换为XML和JSON字符串,然后将其发送到ActiveMQ服务器 对于转换为XML,我使用XStream API;对于转换为JSON,我使用Google GSON API。在这两种情况下,我希望在转换后有一致的输出,我在这里没有看到。其中一个显示标签和整个包名,而另一个完全忽略了这两个 我是否可以使用任何标准转换API将输入对象转换为XML和JSON的一致输出格式将java对象同时转换为XML和JSON不会产生一致的输出,java,xml,json,xstream,Java,Xml,Json,Xstream,我试图将ArrayList中的java对象转换为XML和JSON字符串,然后将其发送到ActiveMQ服务器 对于转换为XML,我使用XStream API;对于转换为JSON,我使用Google GSON API。在这两种情况下,我希望在转换后有一致的输出,我在这里没有看到。其中一个显示标签和整个包名,而另一个完全忽略了这两个 我是否可以使用任何标准转换API将输入对象转换为XML和JSON的一致输出格式 Input Object (ArrayList containing some POJO
Input Object (ArrayList containing some POJO):
==================
eventsLst = [PageViewEvent{pageName=Home Page, pageType=Home}]
XML Conversion (Using XStream):
====================================
<list>
<com.istore.event.model.PageViewEvent>
<pageName>Home Page</pageName>
<pageType>Home</pageType>
</com.istore.event.model.PageViewEvent>
</list>
JSON Conversion (Using GSON):
========================================
[{"pageName":"Home Page","pageType":"Home"}]
输入对象(包含一些POJO的ArrayList):
==================
eventsLst=[PageViewEvent{pageName=Home Page,pageType=Home}]
XML转换(使用XStream):
====================================
主页
家
JSON转换(使用GSON):
========================================
[{“pageName”:“主页”,“pageType”:“主页”}]
您必须定义一致性的含义。
节点应该是什么呢?与其说完全限定的类名,不如说只需要类名,也不需要标记。你可以看看XStream教程。我知道有很多方法可以解决这个问题,但我更倾向于使用通用技术来处理这个场景,而不是使用两个不同的JAR(xstream.jar和google gson.jar)来自两个完全不同的提供商。