spring boot oracle db 연결

Spring Boot는 자바 기반의 웹 애플리케이션을 개발하기 위한 프레임워크로, 데이터베이스와의 연결이 필요한 경우가 많습니다. 이번 포스트에서는 Spring Boot에서 Oracle DB와의 연결을 설정하는 방법에 대해 알아보겠습니다.

1. Oracle DB 의존성 추가

Spring Boot 프로젝트를 생성한 후, pom.xml 파일에 Oracle DB에 연결하기 위한 의존성을 추가해야 합니다. 아래는 Oracle DB와 연동하기 위한 의존성 설정 예시입니다.

<dependencies>
    <!--... 다른 의존성들 ...-->
    <dependency>
        <groupId>com.oracle.database.jdbc</groupId>
        <artifactId>ojdbc8</artifactId>
        <version>19.8.0.0</version>
    </dependency>
</dependencies>

위의 예시에서는 Oracle 19c 버전에 맞춰 ojdbc8 의존성을 추가했습니다. 사용하는 Oracle 버전에 따라 적절한 버전의 의존성을 추가해야 합니다.

2. 데이터베이스 연결 정보 설정

Spring Boot에서는 application.properties 또는 application.yml 파일을 통해 데이터베이스 연결 정보를 설정합니다. 아래는 application.properties 파일에 Oracle DB 연결 정보를 설정하는 예시입니다.

spring.datasource.url=jdbc:oracle:thin:@//localhost:1521/<database-sid>
spring.datasource.username=<username>
spring.datasource.password=<password>
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver

위의 예시에서는 <database-sid>, <username>, <password>를 실제로 사용하는 Oracle DB의 정보로 대체해야 합니다.

3. JPA 설정

JPA(Java Persistence API)를 사용하여 Spring Boot에서 Oracle DB와의 연결을 더 편리하게 관리할 수 있습니다. pom.xmlspring-boot-starter-data-jpa 의존성을 추가하고, JPA 설정을 추가합니다.

<dependencies>
    <!--... 다른 의존성들 ...-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
</dependencies>

application.properties 또는 application.yml 파일에 JPA 설정을 추가합니다.

spring.jpa.database=oracle
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.Oracle12cDialect

위의 예시에서는 Oracle 12c에 맞춰 org.hibernate.dialect.Oracle12cDialect으로 설정했습니다.

4. Repository 인터페이스 생성

데이터베이스 테이블에 접근하기 위한 Repository 인터페이스를 생성합니다. 아래는 예시입니다.

@Repository
public interface UserRepository extends JpaRepository<User, Long> {
    // ... 기타 메소드 정의 ...
}

위의 예시에서 User는 실제 데이터베이스 테이블과 매핑되는 Entity 클래스입니다.

이제 Spring Boot 애플리케이션에서 Oracle DB와의 연결이 설정되었습니다. 이를 기반으로 데이터베이스에 접근하여 필요한 작업을 수행할 수 있습니다.

해시태그: #SpringBoot #OracleDB