我在下面的代码的第一行得到了Exceptionjava.lang.ClassCastException: oracle.jdbc.internal.OracleConnection$$EnhancerByProxool$$3415e85 cannot be cast to oracle.jdbc.driver.OracleConnection如何将字符串转...
我在下面的代码的第一行得到了Exception
java.lang.ClassCastException: oracle.jdbc.internal.OracleConnection$$EnhancerByProxool$$3415e85 cannot be cast to oracle.jdbc.driver.OracleConnection
如何将字符串转换为oracle.sql.Clob以及如何使用PreparedStatement插入.
// con is java.sql.Connection object
oracle.sql.CLOB newClob = oracle.sql.CLOB.createTemporary(con, false, oracle.sql.CLOB.DURATION_SESSION);
newClob.putString(1,transcript);
pstmt.setClob(1, newClob);
pstmt.setString(2, StringUtils.dateToMillis(endTime));
pstmt.setString(3, sessionID);
int count = pstmt.executeUpdate();
System.out.println("updated count ::"+count);
System.out.println("transcript updated....");
解决方法:
Clob clob = connection.createClob();
clob.setString(1, transcript);
或者简单地使用setClob()方法将读者作为参数:
pstmt.setClob(1, new StringReader(transcript));
无需使用任何数据库专有类. JDBC应该是一个与数据库无关的抽象层.
本文标题为:java – 使用oracle.jdbc.driver.OracleConnection的类强制转换异常
- 浅谈Java封装、继承、多态特性 2023-08-11
- SpringBoot使用@EnableAutoConfiguration实现自动配置详解 2023-04-17
- 一文了解Java 线程池的正确使用姿势 2023-06-17
- SpringBoot利用自定义注解实现多数据源 2023-06-10
- Spring jcl及spring core源码深度解析 2023-07-01
- java实现周期性执行(定时任务) 2023-05-09
- 最新hadoop安装教程及hadoop的命令使用(亲测可用) 2022-12-11
- MyBatisPlus的简介及案例详解 2023-03-11
- Java知识梳理之泛型用法详解 2023-04-06
- SpringCloud集成Sleuth和Zipkin的思路讲解 2023-07-01