Java ResultSet 方法获取 Oracle RAW 类型
Posted
技术标签:
【中文标题】Java ResultSet 方法获取 Oracle RAW 类型【英文标题】:Java ResultSet Method to Get Oracle RAW Type 【发布时间】:2017-05-03 23:32:55 【问题描述】:我有一个由选择查询返回到 Oracle 数据库的结果集。返回的行之一是RAW
类型。根据我从Database JDBC Developer's Guide 中得知的信息,RAW
映射到Java 的byte[]
类型,这表明我应该使用ResultSet's getBytes() method。这是我第一次使用Oracle 的RAW
类型,我想知道getBytes()
是否确实是要走的路,或者是否另一种检索方法(getBytes()
除外)是更合适的选择。我试过谷歌搜索并搜索其他 SO 问题,其中一些似乎建议 getBytes()
,但没有确定的。谢谢。
【问题讨论】:
为什么不写一些代码试试看呢? 我做到了,没关系。只是想知道是否有更好的解决方案。 您已经从权威来源获得了答案,即文档。你还期待什么? @MarkRotteveel 我听到你在说什么,但我只是希望看看是否有更好的方法。此外,虽然来源是权威的,但我认为“答案”不是。 【参考方案1】:由于 RAW 只能包含 2000 字节的数据(根据 oracle documentation),您可以使用 getBytes()
安全地检索它。也可以使用 getBinaryStream()
进行处理 - 但鉴于内存占用相对较小,我建议不要这样做。
【讨论】:
以上是关于Java ResultSet 方法获取 Oracle RAW 类型的主要内容,如果未能解决你的问题,请参考以下文章
java 此类旨在将作为Db查询结果获取的ResultSet数据转换为JSON。还可以使用其他转换器方法