【发布时间】:2011-07-08 21:56:58
【问题描述】:
我需要一个可以将 POJO 转换为 XML 和 JSON 字符串的开源工具。
如果可以通过 xml 文件而不是注释来配置映射,那么 Jersey(可能还有其他 JAX-RS 实现)将符合这些要求。
有什么合适的吗?
【问题讨论】:
标签: java xml json transformation pojo
我需要一个可以将 POJO 转换为 XML 和 JSON 字符串的开源工具。
如果可以通过 xml 文件而不是注释来配置映射,那么 Jersey(可能还有其他 JAX-RS 实现)将符合这些要求。
有什么合适的吗?
【问题讨论】:
标签: java xml json transformation pojo
POJO 转 XML
JAXB 是 Java 标准 (JSR-222),用于将 Java 对象与 XML 相互转换(我是 JAXB 专家组的成员):
POJO 转 JSON
人们一直在使用带有 Jettison 的 JAXB 来生成 JSON。这就是Jersey(JAX-RS 参考实现)默认将 POJO 转换为 JSON 的方式。
XML 配置
如果您需要通过 XML 配置元数据的能力,那么您可以使用 EclipseLink JAXB (MOXy),我是 MOXy 技术负责人:
【讨论】:
有很多合适的 JSON 库;除了提到的 GSON 之外,Jackson 是一个显而易见的选择。通常你不需要任何注释;但即使您需要,Jackson 也可以使用所谓的混合注释,这意味着关联配置,而不是修改实际的 POJO。最后,如果您必须使用 JAXB 注释(例如,在使用 JAXB 生成 XML 时),Jackson 支持它们。
另外,Jackson 扩展模块jackson-xml-databind 可以将 POJO 数据绑定到 XML 和从 XML 绑定数据,因此您只需使用一个库即可。
【讨论】:
你试过蓖麻吗?
支持 XML 映射 -
http://www.castor.org/xml-mapping.html
如果需要 JSON,可以从 XML 中使用 json-lib。
http://answers.oreilly.com/topic/278-how-to-convert-xml-to-json-in-java/
【讨论】:
查看 GSON 以将 POJO 转换为 JSON:
http://code.google.com/p/google-gson/
我们已经使用了几年了。非常棒的图书馆。
对于到 XML 的 POJO,Jersey 使用 JAXB,或者您可以使用自己的序列化程序。
【讨论】: