我有班级
class Header {
@FCBTag(type="type1") --My custom annotation
int a = "valueA";
@FCBTag(type="type2")
String b = 1;
@FCBTag(type="type3")
Boolean c = true;
}
我想把这个类编成像这样的XML
<Header>
<a type="type1" value="valueA" />
<b type="type2" value="1" />
<c type="type2" value="true" />
</Header>
有可能吗?是否存在一些适配器?我怎么能这样做?
答案 0 :(得分:0)
我在EclipseLink JAXB (MOXy's) @XmlPath
扩展程序中实现了对此的支持。以下是如何在类上指定映射。
import javax.xml.bind.annotation.XmlType;
import org.eclipse.persistence.oxm.annotations.XmlPath;
@XmlAccessorType(XmlAccessType.FIELD)
class Header {
@XmlPath("a[type='type1']/@value")
int a = "valueA";
@XmlPath("b[type='type2']/@value")
String b = 1;
@XmlPath("c[type='type3']/@value")
Boolean c = true;
}
了解更多信息
我的博客上有这个功能的完整示例: