web-dev-qa-db-ja.com

SpringBootを使用してOracleデータベースに接続する方法

Spring Bootアプリケーションを使用していて、Oracleデータベースにアクセスしようとしています。正常にビルドされましたが、Kubernetesにデプロイしようとすると、以下のエラーが発生します。

application.propertiesファイルとpom.xmlファイルを以下の構成で変更しました。

Application.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   
1

Mavenの依存関係:

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

application.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

driver.class-name

場合によっては、application.ymlファイル(Oracle 10の場合)にspring.jpa.database-platform=org.hibernate.dialect.Oracle10gDialectを追加する必要があります。

4
smilyface

以下の依存関係とリポジトリを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>

また、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
2
abdullah imran

ファイル内のdbドライバーを更新しますApplication.ymlから

spring.datasource.driver-class-name=Oracle.jdbc.**driver**.OracleDriver or spring.datasource.driver-class-name=Oracle.jdbc.OracleDriver
1
user12264329

アプリケーションがOracle.jdbc.OracleDriverクラスをロードするには、OracleJDBCドライバーのjarファイルをダウンロードしてクラスパスに追加する必要があります。

ドライバーは ここ からダウンロードできます。

0
Darshan Mehta

Spring Boot app の例が役立つかどうかを確認できます。

0
Nirmala