프로젝트 데이터베이스 설정 - yml

c.Hano·2025년 2월 27일

프로그래머스

목록 보기
4/5

개발환경 -> application-dev.yml / embedded 모드로 데이터베이스 설정

테스트환경 -> application-test.yml / mem 모드로 데이터베이스 설정.

통합 -> application.yml / 두 파일의 공통 코드를 해당 파일에서 설정.


1. application.yml 설정.

spring:
	profiles:
    active: dev -> 따로 에너테이션으로 설정하지 않을시 기본적으로 application-{profiles}.yml 을 불러옴.
    				여기선 profiles를 dev로 설정하였다.

	jpa:
    	show-sql: true -> sql을 보여준다.
        database-platform: org.hibernate,dialect.H2Dialect -> h2데이터베이스의 플랫폼 설정.
        hibernate:
        	ddl-auto: update -> 어플리케이션 실행 시 자동으로 테이블을 업데이트 해주는 기능.
            
    h2:
    	console:
        	enabled: true -> 콘솔(브라우저)에서 h2데이터베이스에 접근할 수 있도록 하는 기능.
            path: /h2-console -> 콘솔(브라우저)에서 localhost:8080/h2-console 으로 h2 접근 가능.

2. application-dev.yml 설정.

spring:
	datasource:
    	url: jdbc:h2:~/reproject
        driver-class-name: org.h2.driver
        username: sa
        password: 1

3. application-test.yml 설정.

spring:
	datasource:
    	url: jdbc:h2:mem:testdb -> mem방식의 데이터베이스 사용
        driver-class-name: org.h2.driver
        username: sa
        password:
        
    jpa:
    	hibernate:
        	ddl-auto: create-drop -> 어플리케이션 종료 시 데이터값 삭제.

  • 스프링은 작동 시 기본적으로 application.yml 파일을 확인 후 해당 설정을 적용하고 클래스에서 에너테이션을 확인 후 application-{profiles}.yml 에서 profiles에 따른 yml 파일을 덮어쓴다.

  • -test.yml 파일을 사용하려면 클래스에서 @ActiveProfiles("test")를 선언해야한다.

이제 작성한 엔티티와 레포지토리가 실제로 작동하는지 test파일을 만들어볼 것이다.

profile
꼬질이

0개의 댓글