inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 부트 - 핵심 원리와 활용

외부설정 사용 - @ConfigurationProperties 시작

MyDataSourcePropertiesV1 스프링 빈으로 등록

279

bae jewoo

작성한 질문수 20

1

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)

[질문 내용]
안녕하세요 좋은 강의 잘 듣고 있습니다!!

이번 강의를 들으면서
@EnableConfigurationProperties(MyDataSourcePropertiesV1.class)를 통해
MyDataSourcePropertiesV1.class 클래스를
스프링 빈으로 등록해야지 외부 설정을 읽어서 해당 클래스에 바인딩하고 Config에서는 그걸 주입 받아 DataSource에 주입하는 걸로 이해를 했습니다.

여기서 저는 단순히 스프링 빈으로 등록하는 거라면
@Import를 사용하거나
MyDataSourcePropertiesV1.class에 @Component를 붙여서 컴포넌트 스캔 대상이 되도록 하는 등의 방법으로 해도 잘 동작하는게 아닐까? 라는 생각에
2가지 다 사용해서 테스트를 진행했는데 별문제가 없었습니다.

분명히 @EnableConfigurationProperties을 만든 이유가 있을듯한데 저의 짧은 지식으로는 잘 모르겠습니다.

@ConfigurationPropertiesScan은

@ConfigurationProperties가 붙은 클래스를 마치 컴포넌트 스캔과 같이 간편하게 스프링 빈으로 등록할 수 있다는 장점이 보이지만

@EnableConfigurationProperties 이 친구는 정말 모르겠습니다



spring spring-boot prometheus grafana

답변 1

2

bae jewoo

해결했습니다
@ConfigurationPropertiesScan or @EnableConfigurationProperties를 사용하지 않고 그냥 일반 빈으로 등록하면

ConfigurationPropertiesBindingPostProcessor에서
바인딩 및 타입 검사를 하지 못해서 애플리케이션이 오류가 발생하네요

이전 테스트에서는 @ConfigurationPropertiesScan이 있어서 ConfigurationPropertiesBindingPostProcessor
가 동작했나 봅니다

보안이 엄격한 데이터

0

73

1

MyProperties 자체를 클라이언트 코드에서 사용

1

44

1

http://localhost:8080/actuator/prometheus

0

85

3

jar 추가에대한 질문드려도될까요?

0

64

1

build.gradle bom link 변경

0

66

2

@Counted 초기화

0

48

1

@Validated를 적용해도 빈 검증이 안되는 경우에 대한 조치 공유..

0

102

2

springboot에서 actuator없이 micrometer를 사용할수 있나요?

0

67

1

@Configuration 질문드립니다.

0

84

2

[공유] 터미널 말고 IDE 에서 jar 실행하기

0

101

1

localhost:8080/hello-servlet 404오류

0

123

2

내장톰캣2 서블릿 톰켓 실행이 안됩니다

1

154

2

최대 Tomcat 스레드 수를 확인하는 지표

0

160

1

mac m2에서 startup.sh 실행후 아무 반응이 없습니다.

0

94

2

내장 톰캣 실행 오류 관련 질문드립니다.

0

158

1

스프링 발전 과정들도 자세히 알아둬야하나요??

1

128

1

스프링부트 ioc 컨테이너 갯수

0

89

1

404 페이지

0

134

3

actuator 호출시 타임스탬프 질문

0

90

1

순수 라이브러리 사용하기 2 - memory-v1

0

125

1

외부설정 @ConfigurationProperties의 내부 클래스에서 static을 사용하는 이유를 알고 싶습니다.

0

105

1

서블릿 컨테이너 초기화1 강의 관련 질문입니다~

0

94

1

Thread Config Max 패널 설정 변경 질문

0

128

1

스프링 액츄에이터 shutdown 엔드포인트 활성화가 안됩니다.

0

108

1