Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: interrupt
执行mybatis的mapper方法时,报错了这个错。
通过网上查找,发现了是JDK版本和oracle版本不一致导致的。(我直接从JDK1.8 换成JDK11就可以了)
以下内容转自:Failed to obtain JDBC Connection; nested exception is java.sql.SQLException:oracle.jdbc.OracleDriver_小沈同学_的博客-CSDN博客
程序运行报错如下:
nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: oracle.jdbc.OracleDriver ### The error may exist in file [E:\xxx\xxx\xxx\xxMapper.xml] ### The error may involve com.xxx.system.mapper.xxMapper.xxx ### The error occurred while executing a query ### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: oracle.jdbc.OracleDriver
报错原因:
Oracle驱动版本与jdk版本不一致
解决方法:
下载与本机安装的jdk版本一致的Oracle驱动。
ojdbc6.jar: 适用于jdk6;
ojdbc7.jar: 适用于jdk7;
ojdbc8.jar: 适用于jdk8;
...
ojdbc14.jar 适用于 jdk1.4 和5.0;
...
例如:
(本人所使用jdk版本为jdk8,因此重新下载Oracle驱动为ojdbc8)
1. 下载ojdbc8-12.2.0.1.jar(官网地址:12.2.0.1 - JDBC and UCP Download Page)
2. 下载之后,执行如下命令
mvn install:install-file -Dfile=D:\ojdbc8.jar -DgroupId=com.oracle -DartifactId=ojdbc8 -Dversion=12.2.0.1.0 -Dpackaging=jar -DgeneratePom=true
3. 添加引用
<dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc8</artifactId> <version>12.2.0.1.0</version> </dependency>
4. 刷新Maven项目,程序运行成功。