【问题标题】:Jackson: Configuring an Entity for both Xml and JSON formatsJackson:为 Xml 和 JSON 格式配置实体
【发布时间】:2014-08-04 08:58:06
【问题描述】:

我可以在@JsonPropertyOrder 的帮助下拥有一个支持 JSON 格式的实体。
可以通过使用@XmlRootElement, @XmlAttribute, @XmlElement 获得 XML 支持。
如何配置同时支持 XML 和 JSON 格式的实体?

【问题讨论】:

    标签: java xml json rest jackson


    【解决方案1】:

    只需使用两个注释来注释实体的属性。

    当您执行序列化时,您将根据您想要的类型选择ObjectMapper 或相应的XmlMapper(或任何名称)。

    【讨论】:

    • 谢谢。你能解释一下序列化部分吗?映射器会有if-else吗?
    • @HimanshuYadav 我猜您有一些逻辑可以决定您是要生成 XML 还是 JSON。在此基础上,使用适当的映射器。
    • 可能不是。这是一个新的代码库,所以我可能错了。由于 Controller 被配置为生成 XML 和 JOSN。 @Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON}).我假设实体应该以两种格式序列化,而不需要添加任何 if-else。不是吗?
    • @HimanshuYadav 您不需要添加if-else,但是任何处理@Produces 的东西都可以。我对 JAX RS 了解不多,无法帮助您。
    【解决方案2】:

    Jackson 有一个 module,它允许您使用 JAXB(@XMLRootElement 等)注释来映射到 JSON。

    【讨论】:

      猜你喜欢
      • 2015-06-06
      • 1970-01-01
      • 2017-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-21
      • 1970-01-01
      • 2011-05-09
      相关资源
      最近更新 更多