Spring Boot

Spring boot 외부 설정의 우선순위

상국이 2022. 2. 5. 17:33
728x90

우선순위

  1. 홈 디렉토리에 있는 spring-boot-dev-tools.properties
  2. 테스트에 있는 @TestPropertySource
    ex)@TestPropertySoruce(properties="SangGuk1")
  3. @SpringBootTest 의 properties attribute
    ex)@SpringBootTest(properties="SangGuk1")
          정의해야할 properties가 많은 경우 @SpringBootTest(locations = "classpaath:/경로)
  4. 커맨드 라인 아규먼트
  5. SPRING_APPLIVATION_JSON(환경 변수 또는 시스템 프로퍼티)에 들어있는 프로퍼티
  6. ServletConfig 파라미터
  7. ServletContext 파라미터
  8. java:comp/env JNDI attribute
  9. System.getProperties() 자바 시스템 프로퍼티
  10. OS 환경변수
  11. RandomValuePropertySource
  12. JAR 밖 특정 프로파일용 application properties
  13. JAR 안 특정 프로파일용 application properties
  14. JAR 밖 application properties
  15. JAR 안 application properties
  16.  @PropertySource
  17. 기본 프로퍼티 (SpringApplication.setDefaultProperties)

application.properties 우선 순위

  1. file:./config/
  2. file:./
  3. classpath:/config/
  4. classpath:/
728x90