更换 Xstream 设施

Replace Xstream facilities

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

两个问题:

  1. 我应该用我的 xstream annotations 代替吗?
  2. 我应该改用什么转换器和表示法?

我目前使用的注解是:

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

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

能否将您正在使用的注释类型发送给我们?我们可以帮助您找到替代品。 如果您在 class 级别使用 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 扩展版本使用。