[Spring Boot] SpringBoot 제공 JDBC 드라이버(ojdbc8, ojdbc6 충돌)

JOY·2023년 5월 8일
0

[Spring]

목록 보기
17/18
post-thumbnail

⚒️ SpringBoot 제공 JDBC 드라이버

Spring Boot은 의존성 관리를 위해 Maven이나 Gradle과 같은 빌드 도구를 사용하고
의존성 관리를 통해 필요한 라이브러리들을 쉽게 추가하고 버전을 관리할 수 있다.

  • Spring Boot 2.1 버전 이상 기본 라이브러리
    👉 HikariCP 커넥션 풀 라이브러리
    라이브러리 : ojdbc8 JDBC 드라이버 사용
  • Spring Boot 2.0 버전 이하 기본 라이브러리
    👉 Tomcat JDBC Pool 커넥션 풀 라이브러리
    라이브러리 : ojdbc6 드라이버를 사용하는 것이 일반적, ojdbc8 JDBC 드라이버 사용 가능

ojdbc8

Spring Boot 2.1 버전 이상에서는 ojdbc8 드라이버가 이미 Spring Boot에서 자체적으로 의존성으로 추가되어 있기 때문에, 별도로 ojdbc8 드라이버를 추가하지 않아도 동작

ojdbc6

Oracle 사에서 제공하는 라이브러리, 오라클 데이터베이스에 연결하기 위한 JDBC 드라이버

  • Spring Boot에서는 기본적으로 제공 ❌
    - Spring Boot에서 ojdbc6.jar를 사용하려면 의존성 추가 (pom.xml > dependency)

💥ojdbc6 충돌

  • Spring Boot에서는 이미 데이터베이스 연결을 위한 JDBC 드라이버들 포함하고 있다.
    그러므 이미 포함하고 있는 드라이버들과 ojdbc6.jar가 충돌할 수 있다

프로젝트에 의존성 추가하기
직접 해당 프로젝트에 Java Build PathAdd External JARs를 통해 ojdbc6 jar 라이브러리 추가

결론

Spring Boot에서는 스타터(starter) 라이브러리를 제공하는데,
JDBC 드라이버를 사용하려면 spring-boot-starter-jdbc 또는 spring-boot-starter-data-jpa와 같은 스타터 라이브러리를 추가해야 한다.
이 스타터 라이브러리를 추가하면, Spring Boot는 HikariCP 커넥션 풀과 함께 ojdbc8 드라이버를 자동으로 추가한다.

profile
Just Do IT ------- 🏃‍♀️

0개의 댓글