datasource4 Failed to load driver class org.postgresql.Driver in either of HikariConfig class loader or Thread context classloader 에러 잘 돌아가던 DB 설정이 갑자기 안돌아갔다. 기존의 잘돌아가던 코드에 변경을 준 것은 아니라는 점을 토대로 버전에 변경이 생겼나 살펴봤다. 우선 에러 전문: Caused by: java.lang.RuntimeException: Failed to load driver class org.postgresql.Driver in either of HikariConfig class loader or Thread context classloader 간단히 요점을 말하자면 build 파일이 깨져서 발생한 문제였다. 근거는 build.gradle에 따로 버전을 명시하지 않았다는 점 (지원하지 않는 버전일 확률이 낮다.), rebuild를 수행한 이력이 없는 점(이 또한 갑자기 버전이 꼬일 리 없음을 의미한다)이 있었다... 2022. 10. 2. [Spring DB] Hikari DataSource로 이해하는 DataSource - 1. Connection Pool 생성하기 이전 포스팅: 2022.09.07 - [Spring/스프링 기본 원리] - [Spring DataSource] Connection Pool, DataSource 란? DataSource는 메타데이터를 통해서 Connection Pool을 생성하고, 해당 ConnectionPool과 상호작용해서 사용자에게 여러 인터페이스를 제공한다는 것은 알겠다. 하지만 어떻게 하는 지는 알 수 없다. 그렇게 크게 알 필요가 있을 것 같지는 않지만 그냥 궁금해서 한 번 파해쳐봤다. 지금부터는 그래서 DataSource가 어떻게, 어떤 과정을 거쳐서 제 역할들을 하고 있는지 HikariDataSource 코드를 사용해서 한 번 알아보자. Recall: DataSource 생성 위 코드는 DataSource Bean을 직접 .. 2022. 9. 7. [Spring DataSource] Connection Pool, DataSource 란? 웹 애플리케이션을 개발한다고 할 때 데이터베이스는 거의 필수적이다. 데이터베이스에 데이터를 넣고, 특정 데이터를 읽어오기 위해서는 먼저 데이터베이스에 연결되어있어야 한다. SpringBoot로 프로젝트를 구성한다면 그냥 application.yml에 메타정보를 등록하면 알아서 해주니까 데이터베이스에 어떤 과정을 거쳐서 연결되는지 알 수가 없다. spring: datasource: hikari: driver-class-name: org.postgresql.Driver jdbc-url: "jdbc:postgresql://127.0.0.1:5433/testdb" username: root password: root . 하지만 Spring의 properties 파일이나 yml 파일로 설정을 구성할 때도 위와 같.. 2022. 9. 7. [DB Migrator] Spring Boot에 2개 이상의 DataSource 붙이기 2022.08.30 - [Spring] - [DB Migrator] Spring Boot와 함께하는 DB Migrator 프로젝트 - 1 [DB Migrator] Spring Boot와 함께하는 DB Migrator 프로젝트 - 1 이전에 인턴십을 진행했던 회사에서는 Spring에서 NestJS로의 리팩토링을 담당했었다. 해당 팀에 스프링 개발자가 없어 유지보수에 어려움을 겪던 것이 그 이유. 인턴십 기간 동안 생소한 Typescript taler.tistory.com 이전 글을 보면 알 수 있듯, MongoDB의 데이터를 Postgres로 옮기는 작업을 수행하고자 했고, 이를 Spring-data-mongo, Spring-data-jpa의 도움을 받아 진행하고자 했다. 즉, Spring에 2개 이상의 .. 2022. 9. 6. 이전 1 다음