2

我的数据库中有一个包含以下字段的表

field1 of type NUMBER(38)
other fields

field2是类型NUMBER(38)

现在我有一些 DAOS,它以 Object 的形式为我提供这个 fileld1 信息

 Object field1Value

现在我需要将它的类型转换为数据类型。它应该是哪个数据类型?在我的情况下它是 Integer
但为什么它被映射到 Integer,为什么不是 Long 或 BigDecimal ?
整数是 32 位,但字段在 db 中是 NUMBER 38

4

1 回答 1

1

你不应该投射任何东西。这就是 DAO 的作用——在数据库和应用程序代码之间架起一座桥梁。

您需要更改 DAO 以提供适当的数据类型。BigInteger将是最合适的,因为 along只有 64 位精度,而Oracle 的 number(38) 数据类型具有 126 位精度,并且您的字段没有小数部分。

于 2012-08-22T11:43:07.047 回答