我在 xsd 中有这样的东西(我无法编辑):
<xsd:simpleType name="Foo">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="BAR"/>
</xsd:restriction>
</xsd:simpleType>
JAXB 在表示元素的类中生成此 java 代码,该元素Foo
作为子元素:
public Foo getValue() {
return value;
}
public void setValue(Foo value) {
this.value = value;
}
但是只有一个可能的值Foo
,所以我希望在我的 java 代码中看到这样的内容:
public Foo getValue() {
if( value == null )
{
return Foo.BAR; //Foo already is defined as enum, so this code is fine
}
return value;
}
有没有一些简单的方法可以在 JAXB 中实现这一点?