jdbc 读取oracle long raw 字段,里面存的是文本

Posted stono

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jdbc 读取oracle long raw 字段,里面存的是文本相关的知识,希望对你有一定的参考价值。

jdbc 读取oracle long raw 字段,里面存的是文本

参考:

http://singlewolf.iteye.com/blog/278769

http://blog.csdn.net/restraint/article/details/7190265

http://blog.csdn.net/bq1073100909/article/details/49335491

String sql = "select condition from tbl t where t.a = ? and t.b = ?";
            PreparedStatement statement = hebSgConn.prepareStatement(sql);
            statement.setString(1, "20170305");
            statement.setInt(2, 146897);
            ResultSet resultSet = statement.executeQuery();
            if (resultSet.next()) {
                InputStream inputStream = resultSet.getBinaryStream("condition");
                ByteArrayOutputStream infoStream = new ByteArrayOutputStream();
                int len = 0;
                byte[] bytes = new byte[1024];
                try {
                    while ((len = inputStream.read(bytes)) != -1) {
                        // 将bcache中读取的input数据写入infoStream
                        infoStream.write(bytes, 0, len);
                    }
                } catch (IOException e1) {
                    throw new Exception("输入流读取异常");
                } finally {
                    try {
                        inputStream.close(); // 输入流关闭
                    } catch (IOException e) {
                        throw new Exception("输入流关闭异常");
                    }
                }
                try {
                    String result = infoStream.toString(DEFAULT_ENCODING);
                    System.out.println(result);
                } catch (UnsupportedEncodingException e) {
                    throw new Exception("输出异常");
                }
            }

基本上是流操作;

 

以上是关于jdbc 读取oracle long raw 字段,里面存的是文本的主要内容,如果未能解决你的问题,请参考以下文章

java mybatis对oracle long解决办法?

oracle查看blob字段

工作经验:mybatis 处理 oracle Long 类型

如何在java中读取oracle blob

关于mybatis3.0处理long字段的问题

oracle修改字段类型由varchar2修改为clob类型