6

在我的数据库中,我有类似的列

"ISDEFAULTPAYMENTFORCURRENCY" CHAR(1 BYTE) NOT NULL ENABLE,
CHECK (ISDEFAULTPAYMENTFORCURRENCY IN ('N','Y')) ENABLE,

在我的豆子里,我有

    private Boolean isDefaultPaymentForCurrency;

我的问题,我怎样才能isDefaultPaymentForCurrency在hibernate hbm文件中映射它?

<property name="isDefaultPaymentForCurrency" type="???" column="ISDEFAULTPAYMENTFORCURRENCY" not-null="true"/>
4

4 回答 4

3

采用

<property name="isDefaultPaymentForCurrency"  type="yes_no" column="ISDEFAULTPAYMENTFORCURRENCY" not-null="true"/>

要使用 hql,您可以在hibernate.cfg

<property name="hibernate.query.substitutions">true 'Y', false 'N'</property>
于 2013-09-19T18:31:34.227 回答
3

从 Java 原语或包装类到适当的(供应商特定的)SQL 列类型的类型映射。booleanyes_notrue_false都是 Java 布尔值或 . 的替代编码java.lang.Boolean

http://docs.jboss.org/hibernate/stable/core.old/reference/en/html/mapping-types.html

于 2013-09-19T18:35:51.490 回答
2

我参考了链接 Hibernate Mapping Types,并boolean最终使用。

一个hbm.xml例子。

    <property name="scheduable" type="boolean" >
        <column name="SCHEDUABLE" not-null="true" default="false" />
    </property>

映射类型图像

于 2018-11-27T05:37:30.080 回答
0

您可能想尝试以下类型:org.hibernate.type.YesNoType. 以下参考资料可用于此(特别是第 6.1.1.3 节)。注册为yes_no

于 2013-09-19T18:30:32.257 回答