我有一个字段名称为“BID”的表,其数据类型设置为 NUMERIC(20,0)。现在我知道它永远不会是十进制/浮点值,但始终是整数/长整数,即自然数。
代码生成器有没有办法使生成的模型类中的变量为 Long,而不是它当前生成的 java.math.BigDecimal。可以在jooq.properties中设置吗??
此“功能”目前仅适用于 Oracle 数据库,这NUMBER
是唯一可用的数字类型。将 Oracle 与 jOOQ 一起使用,NUMBER(20, 0)
将映射到java.math.BigInteger
而不是java.math.BigDecimal
.
在下一个版本 1.6.3 中,此行为也可用于其他 RDBMS。看
https://sourceforge.net/apps/trac/jooq/ticket/639
除此之外,目前无法在代码生成器中覆盖数据类型映射,但BIGINT
如果您真的不需要 20 个十进制数字,您可以按照 gbn 的建议使用。BIGINT
可以容纳大多数 19 位小数...