java - 将数据类型从 DB 类型转换为 java 数据类型

标签 java oracle types casting type-conversion

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

field1 of type NUMBER(38)
other fields

field2 的类型是 NUMBER(38)

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

 Object field1Value

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

最佳答案

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

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

关于java - 将数据类型从 DB 类型转换为 java 数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12072198/

相关文章:

Java模型更新多个 View

java - 在 Java 中传递比较器语法帮助

java - 使用 Java 从 oracle DB 中保存/检索巨大 blob 的性能问题

ios - 未指定数据类型时 Swift 变量为 nil

Python:子类化 frozenset 不可迭代?

ubuntu - 如何在 Ubuntu 中设置 Java 环境路径

Linux 上的 JAVA 堆大小监控

oracle - 为什么我的表大小比 avg_row_len 的预期大近 10 倍?

sql - SQL字符串比较-如何忽略空格

scala - 在没有隐式证据对象的情况下直接使用 Scala 类型类