SpringBoot访问Oracle异常错误—ClassNotFoundException oracle.jdbc.OracleDriver

分类:计算机 | 数据库 | Oracle | 综合 1909
更新:2020-11-13 01:31:48
编辑

1 异常说明

在SpringBoot maven工程中访问Oracle数据库,总是报错“ClassNotFoundException oracle.jdbc.OracleDriver”,具体的报错信息如下图所示:

2 异常分析

yml文件中Oracle数据源的连接配置如下:

# Oracle数据库配置
  oracledatasource:
    driver-class-name: oracle.jdbc.OracleDriver
    url: jdbc:oracle:thin:@127.0.0.1:1521:orcl
    username: TEST
    password: TEST
    initialSize: 5
    maxActive: 50
    maxIdle: 10
    minIdle: 1
    maxWait: 60000
    timeBetweenEvictionRunsMillis: 60000
    minEvictableIdleTimeMillis: 300000
    validationQuery: select 1 from dual
    testWhileIdle: true
    testOnBorrow: true
    testOnReturn: false
    poolPreparedStatements: true
    maxOpenPreparedStatements: 50

刚开始以为是数据源的配置有问题,把driver-class-name改成了driverClassName也不行,后来想着可能是oracle的连接驱动包有问题, 于是去maven本地仓库中检查了一下oracle连接驱动包的情况,如图所示: 果然发现是缺少了oracle的jdbc驱动连接jar包,于是乎找了一个相应版本的oracle驱动包放到了maven仓库中后,对maven工程的jar包进行reimport以后就可以正常地访问Oracle数据库了。

一开始没有发现丢失了jar包是因为maven工程没有报错,误以为没有缺少jar包。