我可以在hibernate hbm中使用BigDecimal作为id类型吗?

use*_*403 11 java hibernate primary-key bigdecimal

我正在使用休眠.它的id列有20个精度,如下所示,但是NUMBER类型.

NUMBER(38,20) - 这是表(id数据库)的id列的大小.

ID由我们的应用程序生成.在实体中如果我使用Float或Double它不能容纳20个精度.但java.math.BigDecimal可以容纳这些许多精度.但问题是我可以在hbm中使用BigDecimal,如下所示?会有什么问题吗?有时我可能不会发送精确的id.那个时候会休眠生成任何空的精度和插入?

<id name="someId" column="SOME_ID" type="java.math.BigDecimal"/>
Run Code Online (Sandbox Code Playgroud)

请指教!

J. *_*ver 10

您可以使用type ="big_decimal".在任何情况下你都不应该尝试使用Float或Double.