[TIL] Spring boot - Location of application.yml
by 배부른코딩로그스프링부트 스타터를 통해 프로젝트를 간편하게 생성하면, application.properties 혹은 application.yml 파일이 생성되어 있는 것을 볼 수 있다. 어플리케이션 실행 시, 스프링 부트가 자동적으로 이 설정 파일을 읽어드린다.
application.yml이란?
스프링부트에서 서비스에 필요한 여러가지 설정 정보들을 파일 형태로 관리하기 위한 파일이다. 여기서, .yml은 .properties 확장자보다 조금 더 관리하기 쉽도록 만들어진 새로운 포맷이다.
application.yml은!
- Spring boot 어플리케이션에 대한 기본 설정이 담겨있는 파일.
- *.yml, *.properties 등 두 가지 형태 지원.
- Default directory는 src/main/resources/ 에 위치.
- Naming rule은 application-{profile}.yml 혹은 application-{profile}.properties 등을 생성하면 해당 설정 파일을 읽음.
- application.yml의 profile정보를 기입하거나 Java Runtime시 profile정보를 주면 해당 파일만 읽어 실행.
- application.yml profile 설정 예제.
- java runtime시 profile 설정 예제.
- application.yml profile 설정 예제.
application.yml 파일의 위치 변경하기
기본 설정의 application의 파일은 src/main/resources에 위치하지만, 설정이 변경될 때마다 *.jar파일 생성을 위해 다시 빌드를 해줘야하는 불편함이 생긴다. 이를 해결하기 위해서 아래와 같은 작업이 필요하다.
- *.jar가 존재하는 위치나 프로젝트 최상단에 config/ 디렉토리에 application.yml 설정 파일 생성.
- 아래의 구조는 config/{profile}/이 존재하는 이유는 배포 설정에서 해당 경로를 지정해두었기 때문에 가능!
@Ref 참고
『 spring boot가 지원하는 application 파일을 읽는 우선순위와 위치에 대한 가이드 』
Spring Boot Features(https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-external-config)
Spring boot의 properties 설정 파일의 위치 (mj-youn.github.io)
- 2021.05.13(목) TIL end -
반응형
'TIL(Today I Learned)' 카테고리의 다른 글
[TIL] IntelliJ cannot resolve symbol 에러 해결 (0) | 2021.05.26 |
---|---|
[TIL] JUnit 5 계층 구조의 테스트 작성엔 @Nested (0) | 2021.05.21 |
[TIL] JUnit 5 사용자 정의 테스트 명명엔 @DisplayName (0) | 2021.05.21 |
[TIL] Java String, StringBuffer, StringBuilder 뽀개기 (1) | 2021.05.18 |
[TIL] String 이어붙이기 (0) | 2021.05.14 |
블로그의 정보
배부른코딩로그
배부른코딩로그