- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
有没有办法通过 jackson 将 java var(例如 int)序列化为 xml 属性?我找不到任何特殊的 jackson 或 json 注释(@XmlAttribute@javax.xml.bind.annotation.XmlAttribute) 来实现这一点。
例如
public class Point {
private int x, y, z;
public Point(final int x, final int y, final int z) {
this.x = x;
this.y = y;
this.z = z;
}
@javax.xml.bind.annotation.XmlAttribute
public int getX() {
return x;
}
...
}
我想要的:
<point x="100" y="100" z="100"/>
但我得到的只是:
<point>
<x>100</x>
<y>100</y>
<z>100</z>
</point>
有没有办法获取属性而不是元素?感谢您的帮助!
最佳答案
好的,我找到了解决方案。
如果您使用 jackson-dataformat-xml,则无需注册 AnnotaionIntrospector
File file = new File("PointTest.xml");
XmlMapper xmlMapper = new XmlMapper();
xmlMapper.writeValue(file, new Point(100, 100, 100));
缺少的标签是
@JacksonXmlProperty(isAttribute=true)
所以只需将 getter 更改为:
@JacksonXmlProperty(isAttribute=true)
public int getX() {
return x;
}
而且效果很好。只需按照以下方法操作即可:
https://github.com/FasterXML/jackson-dataformat-xml
@JacksonXmlProperty allows specifying XML namespace and local name for a property; as well as whether property is to be written as an XML element or attribute.
关于java - 如何使用 jackson 将 java 对象序列化为 xml 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14712312/
出于好奇,我尝试了一些原型(prototype)制作,但似乎只允许在第一个位置使用子例程的原型(prototype) &。 当我写作时 sub test (&$$) { do_somethin
我需要开发一个类似于 Android Play 商店应用程序或类似 this app 的应用程序.我阅读了很多教程,发现几乎每个教程都有与 this one 类似的例子。 . 我已经开始使用我的应用程
考虑一个表示“事件之间的时间”的列: (5, 40, 3, 6, 0, 9, 0, 4, 5, 18, 2, 4, 3, 2) 我想将这些分组到 30 个桶中,但桶会重置。期望的结果: (0, 1,
我是一名优秀的程序员,十分优秀!