以下内容纯属个人扯淡,仅供参考
1、问题与定位
项目连接的Oracle数据库版本为:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
项目本身使用的ojdbc版本是:
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.3</version>
<scope>runtime</scope>
</dependency>
ORM框架使用的是:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.1.0</version>
</dependency>
使用的是IService实现的save方法去保存对象,当设置字段值超过8位时就会报错
Error preparing statement. Cause: java.lang.ArrayIndexOutOfBoundsException: 8
2、解决
下载ojdbc8,并打入到本地仓库中引用即可,参考:maven-3.6.1:问题解决与使用技巧#将本地jar包打入到本地maven仓库中
3、分析
本项目使用的是jdk8,因此需要使用ojdbc8,而ojdbc6对应jdk6。
你以为ojdbc14就对应jdk14?实际上它对应jdk1.4,没想到吧?
那么ojdbc10对应jdk1还是jdk10?这个我也不知道