druid读取clob字段问题
来源:互联网 发布:手机不能连接数据网络 编辑:程序博客网 时间:2024/06/04 18:43
异常信息
Exception in thread "main" java.lang.ClassCastException: com.alibaba.druid.pool.DruidPooledResultSet cannot be cast to oracle.jdbc.OracleResultSet
类型转换异常
解决方法
public class QueryDataService { private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public String get25MaxTime() { DataSaveBase db = new DataSaveBase(); String time = sdf.format(new Date()); String sql = "select max(answertime) time from question"; ResultSet rs = db.query(sql ); try { while(rs.next()){ time= sdf.format(rs.getTimestamp("time")); } } catch (SQLException e) { e.printStackTrace(); } finally { db.closeConnection(rs); } return time; } public List<Question> queryData(String time) { List<Question> question = new ArrayList<Question>(); DataquerymsgBase db = new DataquerymsgBase(); String sql = "select *&*……*&*& addtime > to_date(?,'yyyy-mm-dd hh24:mi:ss')"; ResultSet rs = db.query(sql, time); try { while (rs.next()) { Question q = new Question(); q.setDateTime(rs.getTimestamp("ADDTIME")); ClobProxyImpl content = (ClobProxyImpl) rs.getClob("CONTENT"); oracle.sql.CLOB contentclob = (CLOB)content.getRawClob(); ClobProxyImpl recontent = (ClobProxyImpl) rs.getClob("RECONTENT"); oracle.sql.CLOB recontentclob = (CLOB)recontent.getRawClob(); try { q.setContent(readStringFromClob(contentclob)); q.setAnswer(readStringFromClob(recontentclob)); } catch (Exception e) { e.printStackTrace(); } q.setNewid(rs.getString("id")); q.setEmail(rs.getString("EMAIL")); q.setPhone(rs.getString("TEL")); q.setReplyTime(rs.getTimestamp("RETIME")); q.setName(rs.getString("name")); question.add(q); } } catch (SQLException e) { e.printStackTrace(); } finally { db.closeConnection(rs); } System.out.println("当前更新数据条数:" + question.size()); return question; } public static String readStringFromClob(Clob clobField) // 类型转换方法 throws Exception { Reader in = null; in = ((CLOB) clobField).getCharacterStream(); int length = 0; char buffer[] = new char[1024]; StringBuffer sb = new StringBuffer(); try { while ((length = in.read(buffer)) != -1) sb.append(buffer, 0, length); } catch (Exception e) { throw new Exception("IO error:".concat(String.valueOf(String.valueOf(e.getMessage())))); } finally { in.close(); } return sb.toString(); }}
ClobProxyImpl content = (ClobProxyImpl) rs.getClob(“CONTENT”);
oracle.sql.CLOB contentclob = (CLOB)content.getRawClob();
这里转换一下即可
参考此篇
阅读全文
0 0
- druid读取clob字段问题
- JDBC读取clob字段
- Java读取clob字段
- 保存Clob字段问题
- 共享clob字段读取方式
- ibatis 读取blob字段 CLOB字段
- Union Clob字段的问题
- clob字段使用union问题
- PowerBuilder 读取Oracle Clob字段内容
- JAVA中读取ORACLE的CLOB字段
- java读取Oracle中Clob字段
- JAVA读取、写入、更新CLOB字段
- JAVA读取、写入、更新CLOB字段
- 【Oracle】Clob字段读取,写入,更新
- 解决比较Oracle中CLOB字段问题
- 解决Druid设置Oracle的Clob字段时的小坑
- mybatis 解决Druid设置Oracle的Clob字段时的小坑
- Java 存储和读取 oracle CLOB 类型字段
- Java多线程系列--“JUC锁”07之 LockSupport
- 鼠标拖拽事件实现
- 分享几个前端工具--制作加载中小图标
- reboot系统调用的时候会调用shutdown函数
- 基于rk3288平台android5.1系统的wifi流程分析 ---- 打开wifi,扫描热点
- druid读取clob字段问题
- java.lang.OutOfMemoryError: PermGen space解决方法
- 将jar包安装到本地仓库
- 下拉菜单
- Redis入门
- 教你搭建vs2013+Qt5的开发环境
- webuploader 多文件上传
- <android> 手机适配 ——适配 “老年机”
- 判断两张图片一致