当我想在带有Xmappr注释的java类中指定XML元素的属性时,我使用@Attribute注释,例如:
exampleclass.java :
@Attribute("Code")
private String code;
它正在为品牌元素映射属性代码
Brand.xml :
<Brand Code="123">
<Description>Name</Description>
<BrandName>true</BrandName>
</Brand>
我的任务是将Xmappr注释更改为BeanIO。
单个元素(没有属性)我可以使用@Field注释进行映射,例如:
@Field(xmlName="Description")
Private String description;
所以问题是,如何使用BeanIO将属性 Code 添加到java类? 我是否需要将xml更改为:
<Brand>
<BrandCode>123</BrandCode>
<Description>Name</Description>
<BrandName>true</BrandName>
</Brand>
并在代码上使用@Field注释, 或者还有其他方法可以做到吗?
答案 0 :(得分:1)
您可以使用
@Field(XMLTYPE = XmlType.ATTRIBUTE)
然后您的代码变为:
@Field(xmlName="Code", xmlType=XmlType.ATTRIBUTE)
private String code;
编辑 - 扩大答案
来自文档:
5.7 Fields
使用字段的xmlType属性将字段映射到XML,默认为element。字段XML类型可以设置为元素,属性,文本或无。
并在
6.2 Annotations
使用注释时,强烈建议为所有字段和段明确设置位置(使用at)。 BeanIO不保证将注释组件添加到布局中的顺序。
注释设置通常根据它们的映射文件对应物命名,并遵循相同的约定。