H2-DataBase

TopOfTheHead·2025년 10월 19일

H2 DataBase :
Java로 작성된 오픈소스 RDBMS

Spring Boot가 지원하는 In-Memory 형식의 RDBMS
Application의 재구동시 초기화.

。개발용도의 Local DB로 사용이 용이
로컬 또는 테스트 환경에서 주로 사용됨.

CI/CD를 구현하는 경우, JPA에 대한 슬라이스 테스트 파일이 존재하는 경우, JPADB 의존성이 필요하므로, application-test.yml을 정의후 H2 DB를 의존하도록 설정
CI/CD 환경에서 테스트 시 별도 DB 설정 없이 테스트가 가능하므로.

runtimeOnly 'com.h2database:h2'
implementation 'org.springframework.boot:spring-boot-starter-data-jdbc'

application.yml에서 다음 구문을 통해 H2-DB 사용설정
Spring JDBC도 추가정의해야 사용가능

spring:
  sql:
    init:
      mode: always
  h2:
    console:
      enabled: true
  datasource:
    url: jdbc:h2:~/test
    username: sa
    password:
    driver-class-name: org.h2.Driver

H2 console 접속 시 필요한 JDBC URL동적으로 변화하므로 다음 정적 JDBC URL로 고정

。이후 http://localhost:8080/h2-console 로 접속

sql파일을 생성하여 H2 DB 초기 설정 table 및 데이터 설정

implementation 'org.springframework.boot:spring-boot-starter-data-jpa'

spring-boot-starter-data-jpa를 활용 시 Application이 구동 및 초기화될때 자동으로 schema.sql을 참조하여 H2-DataBase에 table 생성.

H2-DBIn-Memory DB이므로 어플리케이션재구동마다 데이터 초기화되므로 Application재구동 마다 실행할 초기값 정의용 .sql파일을 생성

profile
공부기록 블로그

0개의 댓글