[英]Prevent jaxb to initialize a list when using getter
Jaxb為列表類型生成以下代碼:
public List<String> getMyList() {
if (myList == null) {
myList = new ArrayList<String>();
}
return this.myList;
}
我希望它只返回字段而不是初始化。
我該怎么做?
我有同樣的問題。 我在XSD文件中聲明一個列表,如下所示:
<xs:element name="parameter" nillable="true" minOccurs="0" maxOccurs="999">
產生的Java類的字段聲明為:
@XmlElement(nillable = true)
protected List<ServiceType.Parameter> parameter;
但是吸氣劑:
public List<ServiceType.Parameter> getParameter() {
if (parameter == null) {
parameter = new ArrayList<ServiceType.Parameter>();
}
return this.parameter;
}
我知道JAXB將列表作為引用進行處理,但這顯然不支持XSD定義可定義的可選列表的功能,因為該列表永遠不會返回為null。
有誰知道有什么插件可以擺脫可空列表的惰性初始化?
問候
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.