gpt4 book ai didi

java - 如何在不产生转换成本的情况下检索可能为 NULL 的 JDBC NUMERIC 列值?

转载 作者:搜寻专家 更新时间:2023-11-01 02:17:56 25 4
gpt4 key购买 nike

我有一个使用 Oracle 数据库的 JDBC 的简单查询,它被证明检索速度很慢,即使查询本身似乎不是问题。剖析器显示大量时间花费在:

ResultSet#getString(String)

方法,其中一些正在检索 Oracle NUMBER 列,这些列具有 Java long 精度,或者大约。这些值也可能为空。

我猜测 getString(String) 在返回定义为数字的列值时速度很慢 - 并考虑过使用 getLong(String) 但当然返回一个不能为 null 的原语。

有没有更好的方法? JDBC NUMERIC 值是否可以作为对象返回而不将其转换为 String 或产生任何其他转换成本?

最佳答案

是这样的吗?

long value = resultSet.getLong(colName);
if (resultSet.wasNull()) {
return null;
} else {
return Long.valueOf(value);
}

关于java - 如何在不产生转换成本的情况下检索可能为 NULL 的 JDBC NUMERIC 列值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2882380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com