인프런 커뮤니티 질문&답변

0715ksj님의 프로필 이미지
0715ksj

작성한 질문수

스프링 핵심 원리 - 기본편

컨테이너에 등록된 모든 빈 조회

해당 클래스 빈 조회 방법

작성

·

144

0

스프링 컨테이너는 생성자에 클래스 정보를 받습니다. 여기에 클래스 정보를 넘기면 해당 클래스(SingletonBean)가 스프링 빈으로 자동 등록됩니다.여기서 등록된 빈을 조회하려고 하는데 저렇게 name을 singletonBean으로 조회하면 등록된 빈을 찾을 수 없다고 오류가 납니다. 빈 이름으로 조회하고 싶은데 무엇으로 조회해야하나요?

답변 1

2

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 0715ksj님

SingletonBean을 중첩 클래스로 정의해서 그런데요.

이 경우 빈 이름을 지정하지 않으면 바깥 클래스명 + 중첩 클래스명으로 정의됩니다.

바깥 클래스명(첫글자 소문자) . 중첩 클래스명 (첫글자 대문자)

singletonBeanTest.SingletonBean

다음과 같이 코드를 작성해보시면 빈 이름을 출력할 수 있습니다.

String[] beanDefinitionNames = ac.getBeanDefinitionNames();
System.out.println("beanDefinitionNames = " + Arrays.toString(beanDefinitionNames));

 

감사합니다.

0715ksj님의 프로필 이미지
0715ksj

작성한 질문수

질문하기