您当前位置:设计在线网 >> JavaScript >> 浏览文章

CLOB异常问题的解决方法

分享到:
本文章讲述了CLOB异常问题的解决方法.

java.lang.ClassCastException: oracle.sql.CLOB oracle.sql.CLOB clob =null;stmt = conn.createStatement();rs = stmt.executeQuery(sql);if (rs.next()) {System.out.println(rs.getClob(column).getClass());clob = (oracle.sql.CLOB) rs.getClob(column);out = new BufferedWriter(clob.getCharacterOutputStream());in = new BufferedReader(new StringReader(data));}这

个代码很奇怪,看试没有一点问题,但是,项目跑起来后,代码

clob = (oracle.sql.CLOB) rs.getClob(column);

都会抛出java.lang.ClassCastException: oracle.sql.CLOB异常(WEB容器使用的是TOMCAT5.5),先以为是类型转换的问题,

System.out.println(rs.getClob(column).getClass());

但打印出来的是oracle.sql.clob

后又以为是驱动的问题,把classes12.jar换成了ojdbc14.jar

可问题还没有解决

解决的方法:

在网上狂找,终于找到一位高人写的一篇高水平的文章(主要是把我的问题给解决了,哈)

是因为驱动包重复了,我理解为类重名,我使用的是tomcat数据源,哪么,$TOMCAT_HOME$\comm\lib目录下需要oracle驱动包,是给tomcat创建jndi数据源时用的,而项目中也要有oracle驱动包,是给程序编译用的,最后使用eclilpse的java build path进行外部引用,使用应用程序编译通过,但也不会把ojdbc14.jar的驱动包引入到发布目录,再试,果然解决了问题。

使用tomcat连接池的问题

在使用jbuilder编译时,会出现一个classes12.jar,把lib下的classes12.jar(oracle包)删除就可以了。

推荐阅读:
Java对Oracle Clob(大字符串)格式的操作说明
流程图绘制软件--yEd 屏幕截图
Javascript 函数的两种调用方式介绍
推荐文章  
赞助商链接  
热门排行  
主题推广  
中国设计在线网 All Rights Reserved. 互联网违法和不良信息举报
信息产业部备案号:湘ICP备09001063号