Java+;杰克逊&x2B;XML:将java对象属性序列化为具有相同名称的XML元素
我有一个Java对象,我想使用Jackson库将其序列化为XML:Java+;杰克逊&x2B;XML:将java对象属性序列化为具有相同名称的XML元素,java,xml,serialization,jackson,jackson-dataformat-xml,Java,Xml,Serialization,Jackson,Jackson Dataformat Xml,我有一个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&g
public class Point {
private Integer x;
private Integer y;
//getters/setters
}
我想将其序列化为以下格式:
<point>
<property name="x" value="1" />
<property name="y" value="1" />
</point>
您需要将这些属性标记为如下属性:
public class Point {
@JacksonXmlProperty(isAttribute = true)
private Integer x;
@JacksonXmlProperty(isAttribute = true)
private Integer y;
//getters/setters
}
看看这里:@MichalFoksa Mixins解决了另一种问题-我可以使用带或不带mixin的注释,但问题仍然存在:如何序列化为请求的格式。
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
}