마스크는 답답하다
article thumbnail

스프링으로 프로젝트를 진행할 때,

로컬에서 DB에 정상적으로 데이터가 저장되는지 확인하기 위해서 H2 DB를 가장 많이 사용한다.

 

이를 제대로 사용하기 위해서는 설정이 필요한데 이를 알아보자

 

build.gradle

 

해당 프로젝트가 gradle 프로젝트라고 가정하고

가장 먼저 해당 프로젝트에서 H2를 사용하기 위해 build.gradle에 의존성이 추가되어 있어야 한다.

 

 

이런식으로 의존성이 추가되어 있어야 한다.

 

이는 start.spring.io에서 애플리케이션을 생성할 때 추가할 수 있으며,

추가하지 않았을 경우 수동으로 추가한 후 build하여 사용할 수 있다.

 

 

application.yml

 

프로젝트에 H2 DB가 추가되었다면 이를 사용하기 위한 설정이 필요하다.

이는 application.yml에서 추가할 수 있다.

 

 

start.spring.io으로 프로젝트를 생성했을 경우 resources 패키지 내에 application.yml 파일대신

application.properties 파일이 있다.

 

application.properties로도 충분히 H2 DB를 사용할 수 있지만, yml파일 문법이 더 직관적으로

눈에 들어오고 검색했을 때도 yml으로 설정하는 내용이 더 많기 때문에 yml파일을 생성하여 사용했다.

 

사람마다 application.yml에서 적용하는 내용이 다르지만 나는 다음과 같이 설정했다.

 

각 줄에 대한 설명은 다음과 같다.

 

spring:
  h2:
    console:
      enabled: true # H2 Console의 사용여부를 결정
      path: /h2 # H2 Console에 접속하기 위한 경로 (URL을 의미)
  datasource:
    url: jdbc:h2:~/tlskals # H2 Console에서 해당 애플리케이션의 DB에 접속하기 위한 경로
  jpa:
    hibernate:
      ddl-auto: create # 애플리케이션 구동 시 JPA Database 초기화 전략 / none : 사용하지 않음 / create : 기존 테이블 삭제 후 테이블 생성 / create-drop : 기존 테이블 삭제 후 테이블 생성, 종료 시점에 테이블 삭제 / update : 변경된 스키마 적용 / validate : 엔티티와 테이블 정상 매핑 확인
    show-sql: false # DB에 날리는 쿼리문 표시 여부 / 추 후 true로 변경 예정
    properties:
      hibernate:
        format_sql: true # 쿼리문 포맷 (가독성 증가)

 

Local에서 접속하기

 

설정을 마친 후 애플리케이션을 구동한 다음 H2가 정상적으로 작동하는지 확인하는 방법은 다음과 같다

 

먼저 위의 console.path에서 설정한 값을 localhost:8080 뒤에 붙여서 접속한다.

해당 주소에 접근하게 되면 다음과 같은 화면이 나온다.

 

이것이 바로 H2 Console 창이다.

 

이 후 해당 애플리케이션의 H2 DB에 접근하기 위해 JDBC URL에 application.yml의 datasource 입력한

url 주소를 입력한 후 Connect 버튼을 눌러 해당 애플리케이션의 DB에 접속할 수 있다.

 

 

'Database > RDBMS' 카테고리의 다른 글

MySQL이란  (0) 2023.02.21

검색 태그