[SPRING BOOT] 프로파일 적용

승 아·2023년 7월 12일
  1. 프로파일을 적용하는 경우
  • 로컬 환경에서는 인메모리DB인 H2 사용, 서버 배포 시 MYSQL DB를 사용하고 싶을 때

    • yml을 server, local로 분리해서 사용하면 된다.
      ex) application-local.yml
  • 애플리케이션을 실행시키면, 프로파일 적용 여부와 관계없이 application.yml 파일에 설정된 정보는 항상 읽어오기 때문에, application-local.yml을 실행시키고 싶으면 application.yml에 아래와 같이 써야한다.

spring:
profiles:
active: local

테스트에서 빌드 시 오류가 발생해서 찾아보니, 실행 환경을 분리하기 위해서 스프링부트 2.4부터는
spring.profiles는 deprecated 되어있어 spring.config.activate.on-profile을 사용해야 한다고 나와있다.

application.yml


spring:
    config.activate.on-profile: default
---    
spring:
    config.activate.on-profile: local

test클래스

  @ActiveProfiles("local") 

https://stackoverflow.com/questions/38711871/load-different-application-yml-in-springboot-test/53134737#53134737

profile
개발 공부를 기록하는 공간

0개의 댓글