如何使用spring Boot 连接oracle数据库

euoag5mw  于 2022-12-23  发布在  Spring
关注(0)|答案(8)|浏览(307)

我正在使用Sping Boot 应用程序并尝试访问Oracle数据库。虽然它已成功构建,但当我尝试在Kubernetes中部署时,它会出现以下错误。
我使用以下配置更改了application.properties文件和pom.xml文件:

应用程序.yml

spring.datasource.url=jdbc:oracle:thin:@<IP>:1521:orcl
 spring.datasource.username=<username>
 spring.datasource.password=<password>
 spring.datasource.driver.class=oracle.jdbc.driver.OracleDriver

POM文件

<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-jdbc</artifactId>
 </dependency>

例外情况

***************************
APPLICATION FAILED TO START
***************************
 Description:
 Failed to bind properties under '' to com.zaxxer.hikari.HikariDataSource:
     Property: driverclassname
    Value: oracle.jdbc.OracleDriver
    Origin: "driverClassName" from property source "source"
    Reason: Failed to load driver class oracle.jdbc.OracleDriver in either of 
            HikariConfig class loader or Thread context classloader
 Action:
 Update your application's configuration
hmmo2u0o

hmmo2u0o1#

Maven依赖项:

<dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc7</artifactId>
        <version>12.1.0</version>
    </dependency>

应用程序. yml文件:

# Oracle settings
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:xe
spring.datasource.username=system
spring.datasource.password=password
spring.datasource.driver.class-name=oracle.jdbc.OracleDriver
    • 注意**:驱动程序.类名

有时您可能需要将spring.jpa.database-platform=org.hibernate.dialect.Oracle10gDialect添加到应用程序. yml文件(对于Oracle 10)。

l7wslrjt

l7wslrjt2#

在pom中添加以下依赖项和存储库

<dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>

<repositories>
    <repository>
        <id>codelds</id>
        <url>https://code.lds.org/nexus/content/groups/main-repo</url>
    </repository>
   </repositories>

还应在www.example.com中添加以下属性application.properties

spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
    spring.datasource.url=jdbc:oracle:thin:@localhost:1521:xe(SID)
    spring.datasource.username=system
    spring.datasource.password=pw
0s7z1bwu

0s7z1bwu3#

将文件Application.yml中的数据库驱动程序更新为

spring.datasource.driver-class-name=oracle.jdbc.**driver**.OracleDriver or spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
nnt7mjpx

nnt7mjpx4#

您需要下载Oracle JDBC驱动程序jar文件并将其添加到类路径中,以便应用程序加载oracle.jdbc.OracleDriver类。
驱动程序可以从here下载。

nc1teljy

nc1teljy5#

您可以检查SpringBoot app示例是否有帮助。

up9lanfz

up9lanfz6#

对于Oracle数据库,
Maven设置:

<dependency>
    <groupId>com.oracle.ojdbc</groupId>
    <artifactId>ojdbc8</artifactId>
    <version>19.3.0.0</version>
</dependency>

属性设置:

spring.datasource.url=jdbc:oracle:thin:@172.16.10.12:1521/orcl11
spring.datasource.username=[username]
spring.datasource.password=[password]

不要使用

spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
l3zydbqr

l3zydbqr7#

  • 您只需要在pom.xml文件中添加这两个依赖项,它就可以正常工作。
<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-jdbc</artifactId>
 </dependency>

 <dependency>
     <groupId>com.oracle.database.jdbc</groupId>
     <artifactId>ojdbc8</artifactId>
     <scope>runtime</scope>
 </dependency>
up9lanfz

up9lanfz8#

    • 在Application.properties中使用此配置。**
spring.jpa.show-sql=true

spring.h2.console.enabled=true

#Using SID
spring.datasource.url= jdbc:oracle:thin:@localhost:1521:ORCL
spring.datasource.username=SYSTEM   
spring.datasource.password=SYSTEM
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver

#hibernate configs
spring.jpa.database-platform=org.hibernate.dialect.OracleDialect
spring.jpa.hibernate.ddl-auto= update

注意事项:
1.已弃用Oracle10g方言。
1.如果此数据库URL的最后一部分是{ORCL}或{XE},则需要检查{jdbc:oracle:thin:@localhost:1521:ORCL}。请参见随附的屏幕截图。enter image description here

相关问题