我应该在Hibernate中使用什么列类型进行BigInteger映射?

时间:2015-09-18 04:48:14

标签: java hibernate oracle11g hibernate-mapping

我正在使用 Oracle XE 数据库和注释驱动的映射。我应该在Hibernate中为BigInteger值映射选择什么列类型?

1 个答案:

答案 0 :(得分:4)

如果您看到documentation已经提及

  

big_decimal,big_integer

     

从java.math.BigDecimal和java.math.BigInteger输入映射到   NUMERIC(或Oracle NUMBER)。

这是我从Hibernate社区

获得的一个例子

使用Oracle 10g和XE的Hibernate 3.1.1。我的表样本的脚本是这样的:

CREATE sample (
sampa NUMBER,
sampb NUMBER(5),
sampc NUMBER(10),
sampd NUMBER(15,2),
sampe NUMBER(19,7)
); 

和相应的

<property name="sampa" column="sampa" type="java.math.BigInteger"/>
<property name="sampb" column="sampb" type="java.math.BigInteger"/>
<property name="sampc" column="sampc" type="java.math.BigInteger"/>
<property name="sampd" column="sampd" type="java.math.BigDecimal" precision="15" scale="2"/>
<property name="sampe" column="sampe" type="java.math.BigDecimal" precision="19" scale="7"/>