我在 Hibernate .hbm.xml 文件中使用“double”,当我使用 Hibernate Tool 生成类时,我得到了具有原始类型 double 的类属性。我希望这个属性是 Java 包装类型 Double。我怎样才能做到这一点?如果我在我的课程中手动更改它,是否会给休眠带来任何问题?
谢谢
我在 Hibernate .hbm.xml 文件中使用“double”,当我使用 Hibernate Tool 生成类时,我得到了具有原始类型 double 的类属性。我希望这个属性是 Java 包装类型 Double。我怎样才能做到这一点?如果我在我的课程中手动更改它,是否会给休眠带来任何问题?
谢谢
我在 Hibernate .hbm.xml 文件中使用“double”,当我使用 Hibernate Tool 生成类时,我得到了具有原始类型 double 的类属性。我希望这个属性是 Java 包装类型 Double。我怎样才能做到这一点?
hbm.xml
映射中的属性是否可以为空?如果是,你应该得到一个Double
.
如果您无法更改映射,则可以覆盖默认行为:
type-mapping
并not-null
设置为false
处理所有列您可能遇到的唯一问题是您的属性是否为空并且该列被声明为非空。所以我建议你总是初始化它。
如果您可以在 hibernate.reveng.xml 的 type-mapping 下添加以下语句,那么您的 pojos 将生成为 java.lang.Double 的 double 类型。
<sql-type jdbc-type="DOUBLE" not-null="false" hibernate-type="double" />
或者
如果您可以在 hbm 文件中添加not-null="false",那也可以解决您的问题。
<property name="salary" type="double">
<column name="SALARY" not-null="false" />
</property>