[英]Can you have multiple sets of JAXB annotations to marshal/unmarshal to different XML?
我們有一些帶有JAXB批注的實體,因此我們可以將一些“傳入” XML編組到pojo。 現在,我們需要將pojos編組為XML,但格式要不同於傳入的xml。 最好的方法是什么?
我的解決方案是在JAXB對象中使用一個額外的“版本”字段來區分綁定的多個版本。 通常,我使用enum作為其類型,即enum版本{V1,V2,...};
因此,對於特定的XML元素字段,我將getField()方法定義為
@XmlElement
public String getField() {
if (version == Version.V1) {
return field;
} else if (version == Version.V2) {
return null; // hidden
}
}
在編組之前,只需將版本值設置為所需的枚舉值,JAXB將負責其余的工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.