如何使用 fastxml jackson 更改 xml 类名?

Posted

技术标签:

【中文标题】如何使用 fastxml jackson 更改 xml 类名?【英文标题】:How to change the xml class name using fasterxml jackson? 【发布时间】:2015-10-07 19:38:36 【问题描述】:

我正在尝试弄清楚如何使用 jackson fasterxml 更改根节点名称。

例如:

public class Car 
    @JsonProperty("engine-type") 
    String engineType = "v8";


public class Ford extends Car 


Ford car = new Ford();
ObjectMapper xmlMapper = new XmlMapper();
System.out.println(xmlMapper.writeValueAsString(this));

结果:

<Ford><engine-type>v8</engine-type></Ford>

这就是我想要的:

    要命名为汽车的根节点。 我希望 Car 在 xml 中为小写:

例如:

<car><engine-type>v8</engine-type></car>

谢谢

【问题讨论】:

【参考方案1】:

我想你可以在这里找到你的解决方案:How to deserialize XML with annotations using FasterXML 为什么不使用 @JacksonXmlRootElement 之类的:

@JacksonXmlRootElement(localName = "car")
public class Ford extends Car 

【讨论】:

以上是关于如何使用 fastxml jackson 更改 xml 类名?的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有 SparkSQL 的情况下使用 fastxml 解析 Spark 中的 JSON?

Apache Beam 的 BigQueryIO (Java):无法将 TIMESTAMP 字段写入 BigQuery——fastxml.jackson 异常“类型不支持”

如何使用 Jackson 更改 JSON 中的字段名称

使用 Spring Data REST 时如何更改 Jacksons 配置?

在fastxml的ObjectMapper中使用SimpleDateFormat是不是安全[重复]

如何在 Vert.x (java) 中使用 Jackson 流式传输 JSON 结果