新:
看来您正在使用
org.springframework.data.jdbc.support.oracle.SqlArrayValuefrom
spring-data-jdbc-ext。错误在那里,展开应该在那里发生。
如下所示(未经测试)
protected Object createTypevalue(Connection conn, int sqlType, String typeName) throws SQLException { return conn.unwrap(OracleConnection.class).createArray(typeName, values);}
关于JDBC驱动程序:
您正在使用Java 8或更高版本,因为Spring 5需要Java8。因此,您应该使用ojdbc8(8表示Java
8)。我强烈建议使用http://www.oracle.com/technetwork/database/application-
development/jdbc/downloads/index.html中的最新12.2.0.1驱动程序。
如果您从http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-
faq-090281.html#01_02检查驱动程序互 *** 作性矩阵,您会发现该diver也适用于较旧的数据库。
旧/过时:
#unwrap。所以代替
OracleConnection oracleConnection = (OracleConnection) connection;
呼叫
OracleConnection oracleConnection = connection.unwrap(OracleConnection.class);
在堆栈跟踪中,您可以看到谁在执行强制类型转换,这将在您的代码中,因为
SimpleJdbcCall和朋友不区分
OracleConnection。问题不在,
JdbcTemplate而是您的代码进行了强制转换。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)