[SPRING BOOT] 외부 설정 및 우선순위 (Externalized Configuration and priorities)

ASHAPPYASIKNOW·2021년 10월 12일
0

SPRING BOOT

목록 보기
1/3

# 기본규칙

우선순위가 낮은 파일과 높은 파일에 같은 항목이 있는 경우 우선순위높은 파일의 항목이 낮은 파일의 항목을 덮어씀.


Spring boot 에서 사용 할 수 있는 외부 설정

  • Properties files
  • YAML files
  • Environment variables
  • Command-line Arguments

우선순위

우선순위No제목설명
낮음1Default propertiesSpringApplication.setDefaultProperties
2@PropertySource@Configuration classes
3Config Data3-1. jar 패키지 안에 있는 application.properties, YAML
3-2. jar 패키지 안에 있는 application-{profile}.properties, YAML
3-3. jar 패키지 밖에 있는 application.properties, YAML
3-4. jar 패키지 밖에 있는 application-{profile}.properties, YAML
4RandomValuePropertySourcerandom.*
5OS environment variables
6Java System propertiesSystem.getProperties()
7JNDI attributesjava:comp/env
8ServletContext init parameters
9ServletConfig init parameters
10SPRING_APPLICATION_JSONinline JSON embedded in an environment variable or system property
11Command line arguments
12@SpringBootTest
13@TestPropertySource
높음14Devtools global settings propertiesdevtools를 사용하는 경우 $HOME/.config/spring-boot

파일 이름이 같을 때 위치에 따른 우선순위

우선순위No위치
낮음1classpath:/
2classpath:/config/
3file:./
높음4file:./config/

REFERENCES

외부설정 파일 설정 및 우선순위
외부설정 파일 위치
[Spring Boot] 외부설정1 - Application.properties

profile
36.9 It's good time to start something new

0개의 댓글