티스토리 뷰
프로그래밍/Spring
[SpringBoot] properties 파일 정의된 프로퍼티 클래스로 묶어서 사용하는 방법 (@ConfigurationProperties 사용)
rlawlstjd007 2020. 4. 6. 22:02들어가며
application.properties
에 설정한 프로퍼티중 여러 값이 같은 key로 묶어서 하나의 Bean으로 등록하는 방법이 있다.
방법
@ConfigurationProperties
application.properties
파일에 같은 key로 묶인 프로퍼티를 정의해준다.
kim.name = JinSeong
kim.age = 22
kim.size = 20
- 그 후 kim이라는 key를 묶을 프로퍼티 클래스를 생성해준다.
- 이때 @ConfigurationProperties("키 값")을 넣어줘야 함
@ConfigurationProperties("kim")
public class MyProperties {
private String name;
private int age;
private int size;
//getter, setter 생략함
}
@EnableConfigurationProperties
- 해당 어노테이션을 아래와 같이 명시를 해줘야지 프로퍼티를 빈으로 등록하여 사용을 할 수가 있다.
@SpringBootApplication
@EnableConfigurationProperties("kim")
public class Application {
public static void main(String[] args) {
SpringApplication app = new SpringApplication(Application.class);
app.setWebApplicationType(WebApplicationType.NONE);
app.run(args);
}
}
- 그치만 SpringBoot에서는 기본적으로 등록이 되어 있어서 명시해줄 필요가 없다.
@Component
- Bean 등록을 위해서 프로터피 클래스를 빈으로 명시를 해주자.
@Component
@ConfigurationProperties("kim")
public class MyProperties {
private String name;
private int age;
private int size;
//getter, setter 생략함
}
사용 예제
- 아래는 Runner 클래스에서 프로퍼티를 주입받아 출력하는 예제이다.
- Runner가 궁금하다면 아래 포스트 참고
@Component
public class MyRunner implements ApplicationRunner {
@Autowired
private MyProperties properties;
@Override
public void run(ApplicationArguments args) throws Exception {
System.out.println(String.format("My name: %s, My age: %s, My size: %s", properties.getName(), properties.getAge(), properties.getSize()));
}
}
끝으로
이 글이 도움이 되었다면, 하단의 Google 광고 👎👎👎 한번씩 클릭 부탁 드립니다. 🙏🙏🙏
광고 클릭은 많은 힘이 됩니다!
반응형
'프로그래밍 > Spring' 카테고리의 다른 글
[SpringBoot] Jackson 사용시 Could not write JSON: No serializer found for class.. 오류 발생 해결법 (0) | 2020.04.08 |
---|---|
[SpringBoot] Application 실행시 다양한 시점의 Event Listener 등록하는 방법 (0) | 2020.04.07 |
[Spring Boot] ApplicationArguments 사용법 (0) | 2020.03.25 |
[Spring Boot] 애플리케이션 실행 후 특정 코드를 수행하는 방법 (Application Runner 사용법) (0) | 2020.03.25 |
[Spring Boot] 디버그 모드 실행 방법 및 디버그 레벨 로그 출력 설정 방법 (0) | 2020.03.21 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- windows
- git
- 이펙티브 자바
- effective java
- 자전거
- 이펙티브자바
- java
- 배낭여행
- JavaFX
- JavaFX 종료
- effectivejava
- 배낭 여행
- springboot
- 텐트
- 자전거 여행
- JavaFX 테이블뷰
- TableView
- 자바
- JavaFX Window Close
- 이펙티브
- 일본 배낭여행
- 방통대 과제물
- intelij
- Java UI
- 일본 자전거 여행
- JavaFX Table View
- 인텔리제이
- 일본여행
- 스프링부트
- 일본 여행
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함