java - 更换 Xstream 设施

标签 java jackson restlet xstream

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

两个问题:

  1. 我应该替换我的 xstream 注释吗?
  2. 我应该使用什么转换器和表示形式?

我目前使用的注释是:

  • XStreamAsAttribute
  • XStreamAlias

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

最佳答案

我们计划仅保留处理多种格式的 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 兼容。

关于java - 更换 Xstream 设施,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31732534/

相关文章:

Java - 如何允许用户选择日期范围,然后检查日期范围是 7 天还是 14 天?

java - 在java中实现分页的最佳方式

java - 用 Jackson 解析巨大的 JSON

java - reSTLet 内容类型,使用 reSTLet 进行版本控制

java - 在java中用 "unclosed tags"解析html

java - 结果集关闭后,我收到“操作不允许”消息

Java,将 JSON 数组存储到类并从其他类调用它

java - Dropwizard 资源错误响应

java - reSTLet 日志中的列有何含义?

ssl - 在 reSTLet 中获取客户端证书