替换Xstream设施

时间:2015-07-30 19:34:04

标签: java jackson restlet xstream

将Xstream升级到1.4.8后,我注意到XstreamConverterXstreamRepresentation已被弃用。

两个问题:

  1. 我应该替换xstream annotations吗?
  2. 我应该使用什么转换器和表示法?
  3. 我目前使用的注释是:

    • XStreamAsAttribute
    • XStreamAlias

    如何使用Jackson实现XML格式的响应?

1 个答案:

答案 0 :(得分:1)

我们计划只保留处理多种格式的Jackson扩展程序,主要是为了简单起见。此删除计划用于框架的3.0版本。

你能给我们发一些你正在使用的注释吗?我们可以帮你找到替代品。 如果您在类级别使用XStreamAlias批注,请使用JacksonXmlRootElement批注。如果您在属性级别使用XStreamAlias和XStreamAsAttribute批注,请使用JacksonXmlProperty批注。例如:

@JacksonXmlRootElement(localName = "MyContact")
public class Contact {
   @JacksonXmlProperty(localName = "firstName")
   private String name;

   @JacksonXmlProperty(isAttribute = true)
   private String attr;

   public String getAttr() {
       return attr;
   }

   public void setAttr(String attr) {
      this.attr = attr;
   }

   public String getName() {
       return name;
   }

   public void setName(String name) {
       this.name = name;
   }

}

这是一个描述XML转换专用注释的页面:https://github.com/FasterXML/jackson-annotations/wiki/Jackson-Annotations

话虽如此,即使在将来,仍然可以将xstream扩展保留在您自己的代码中,而3.0版本的API与您的xstream扩展版本使用的API兼容。 / p>