2011-11-24 86 views
11

我正在使用休眠。它具有如下的20個精度的id列,但是具有NUMBER類型。我可以使用BigDecimal作爲hibernate hbm中的id類型嗎?

NUMBER(38,20) - 這是給予表的id列(Oracle數據庫)的大小。

This id由我們的應用生成。在實體中如果我使用浮點或雙精度,它不能容納20個精度。但java.math.BigDecimal可以適應這些許多精度。 但問題是我可以在HBM中使用BigDecimal,如下所示?會有什麼問題嗎?有時候我可能不會以精確的身份發送id。那時候hibernate會產生任何空的精度和插入?

<id name="someId" column="SOME_ID" type="java.math.BigDecimal"/> 

請建議!

回答

9

您可以使用type =「big_decimal」。在任何情況下,你甚至都不應該嘗試使用Float或Double。

相關問題