gpt4 book ai didi

Java+ jackson +XML : serialize a java object properties as XML elements with same names

转载 作者:行者123 更新时间:2023-11-29 02:57:42 24 4
gpt4 key购买 nike

我有一个 Java 对象,我想使用 Jackson 库将它序列化为 XML:

public class Point {
private Integer x;
private Integer y;
//getters/setters
}

我想将其序列化为以下格式:

<point>
<property name="x" value="1" />
<property name="y" value="1" />
</point>

而不是我使用 Jacskon 得到的:

<point>
<x>1</x>
<y>1</y>
</point>

我不想更改 Point 对象的属性或结构。有没有办法使用 Jackson 注释或自定义序列化程序将 Point 对象序列化为所需格式?如果是,那我该怎么做?

我正在使用 Jackson 库:

public class Serializer {
XmlMapper mapper = new XmlMapper();

public void serialize(File file, Object object) throws IOException {
mapper.writeValue(file, object);
}

}

最佳答案

您需要将这些属性标记为如下属性:

public class Point {

@JacksonXmlProperty(isAttribute = true)
private Integer x;
@JacksonXmlProperty(isAttribute = true)
private Integer y;
//getters/setters
}

关于Java+ jackson +XML : serialize a java object properties as XML elements with same names,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45370802/

24 4 0