Possible Duplicate:
XJC Generating Integer Instead of int
需要使用原始int字段生成实体类。但是这样的xml字符串
<xs:element name="RetriesCount" type="xs:int" minOccurs="0" default="2"/>
生成带有名为'retriesCount'的Integer的类。使用
xs:integer
会生成BigInteger类型的“ retriesCount”字段。有什么解决方案可以生成一个简单的Java int? 最佳答案
因为您的模式为minOccurs="0"
,所以JAXB必须使用能够表示null
值的类型,这就是为什么它使用Integer
的原因。如果您可以将架构更改为minOccurs="1"
,它将可以使用int
。
请注意,default="2"
并不一定能达到XML预期的效果。特别是,如果指定了RetriesCount
元素,但该绑定属性没有值(即<RetriesCount />
或等效的<RetriesCount></RetriesCount>
),则bound属性将仅采用默认值。如果完全缺少RetriesCount
元素,则属性值将为null
。