application.properties
환경변수 설정
- application.properties 파일을 작성한다
- 파일 위치 : reousrces/application.properties
- 파일 내용 예시 : key = value 형태
app.name = spring
- Configuration에 설정한다
1@Configuration
2@PropertySource("application.properties")
3public class AppConfiguration {...}
환경변수 가져오기
ApplicationContext 활용하는 방법
1var environment = applicationContext.getEnvironment();
2var property = environment.getProperty("app.name")
@Value Annotation 활용
1@Value("${app.name}")
2private String name;
별도의 클래스 정의
-
클래스 정의
1@Component 2@PropertySource("version.properties") 3public class VersionProvider { 4 private final String version; 5 6 public VersionProvider(@Value("${version:v0.0.0}") String version) { 7 this.version = version; 8 } 9 10 public String getVersion() { 11 return version; 12 } 13}
-
사용
1private final VersionProvider versionProvider; 2versionProvider.getVersion();
application.yaml
장점
- 계층적인 구조이기 때문에 반복되는 부분이 적고, 직관적이다
환경변수 설정
- application.yml 작성
1env: 2 version: "v1.0.0"
환경변수 가져오기
-
AppConfiguration.java
1@Component 2@ConfigurationProperties(prefix="env") 3public class AppConfiguration { 4 private String version; 5 6 public String getVersion() { 7 return version; 8 } 9 10 public void setVersion(String version) { 11 this.version = version; 12 } 13}
-
main
1var appConfiguration = applicationContext.getBean(AppConfiguration.class); 2System.out.println(appConfiguration.getVersion());