inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 프레임워크 핵심 기술

IoC 컨테이너 7부: MessageSource

@Autowired 로 가져오는 Bean은 ?

해결된 질문

280

공부하는이

작성한 질문수 29

2

@Component
public class AppRunner implements ApplicationRunner {

// @Autowired
// ApplicationContext applicationContext;

@Autowired
MessageSource messageSource;

@Override
public void run(ApplicationArguments args) throws Exception {
// System.out.println(applicationContext.getClass());
System.out.println(messageSource.getClass());

}

Autowired 로 가져오는 Bean 이 햇갈려서 질문드립니다.

위 코드에서 @Autowired을 통해서 주입받는 빈은  MessageSource 가 구현된 클래스인걸로 아는데요..

AnnotationConfigServletWebServerApplicationContext , ResourceBundleMessageSource 두개 모두 문서를 찾아보니 MessageSource 를 구현한 클래스입니다~!

그런데 왜 "ResourceBundleMessageSource "가 빈으로 등록되는지 궁금합니다. 

혹시  @Primary 같은 우선순위가 적용되서 그러는건가요 ? 

spring java

답변 1

5

백기선

좋은 질문 감사합니다. 둘 중에 빈 이름이 mssageSource인 빈을 주입해주기 때문에 ResourceBundleMessageSource가 의존성으로 주입된 겁니다.

스프링 부트가 제공하는 자동 설정중에 MessageSourceAutoConfiguration이라는 클래스에서 ResourceBundleMessageSource빈을 등록해 주는데 그때 빈 이름을 messageSource라는 이름으로 등록해 줍니다.

그리고 아마 다른 수업에서 설명했겠지만 @Autowired는 기본적으로 같은 타입의 빈이 여러개 있다면 그중에서도 같은 이름의 빈을 주입해 주죠. 같은 이름의 빈이 없다면 에러를 던지구요.

BeanFactory와 ApplicationContext 중 사용하고 싶은 컨테이너를 설정 할 수 있나요?

0

378

1

프로젝트 생성에 관련한 질문

0

374

1

안녕하세요 강의 내용을 듣다가 궁금점이 생겨 글을 남기게 되었습니다.

0

370

1

HttpServeltRequest 객체의 빈 스코프에 대해 질문 드립니다.

0

304

0

PropertyEditor non thread-safe 한 이유

0

490

1

빈의 초기화 시점이 궁금합니다.

0

393

1

이 강의 예제소스 없나요?

0

345

1

릴로딩 기능에 대해

0

404

1

Bean 을 특정 Application...Event 발생 후, 등록하는 방법이 궁금합니다

0

611

3

IoC/DI와 POJO의 관계

1

747

2

기선님 RetentionPolicy에 대해서 질문이 있습니다.

0

291

1

안녕하세요 기선님!

3

486

3

비동기적으로 실행할때

0

313

2

"Prototype/프록시"로 설정했는데 동일한 객체로 나옵니다

0

529

4

Type-Safety 의미

0

537

1

Null Point

0

318

1

WebDataBinder를 특별히 쓰는 이유가 있나요?

0

383

1

안녕하세요?

0

335

2

애노테이션이 없습니다(?)

0

275

3

코드 중 변수 앞에 적는 것이 무엇인지 알고 싶습니다.

0

289

2

강의 하시면서 사용하는 resolving 이란 단어는 어떤 의미인가요?

1

1494

1

IOC컨테이너관련 질문입니다

0

240

3

인터페이스가 있는 경우 인터페이스 타입으로 주입하는 추가 질문입니다.

0

256

1

백기선님 , 강좌 순서 때문에 고민드립니다.

0

458

4