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

donald010님의 프로필 이미지

작성한 질문수

스프링 핵심 원리 - 기본편

스프링 컨테이너 생성

스프링 빈에 대하여 질문드립니다.

해결된 질문

21.06.28 01:21 작성

·

182

2

빈 조회하는 강의까지 듣고 궁금증이 생겨 관련 강의에 질문 남깁니다.

자료의 " 2. 스프링 빈 등록 "

부분을 보면 "빈 이름, 빈 객체" 부분에서 이름과 인스턴스가 저장되는 것 같습니다.  그래서 아래의 테스트 코드로 테스트를 해봤습니다.

@Test
@DisplayName("memberService 2개 가져올시 인스턴스 같은가")
public void memberRepositoryInstanceCheck() {
MemoryMemberRepository memberRepository = ac.getBean("memberRepository", MemoryMemberRepository.class);
MemoryMemberRepository memberRepository1 = ac.getBean("memberRepository", MemoryMemberRepository.class);

Assertions.assertThat(memberRepository).isEqualTo(memberRepository1);
}

테스트 결과 같은 인스턴스로 나왔는데,  AppConfig에서 MemoryMemberRepository도 같은 인스턴스가 반환된다고 하면 MemoryMemberRepository의 Map에서 static을 제거해도 동일하게 동작한다고 봐도 될까요?

답변 1

4

donald010님의 프로필 이미지
donald010
질문자

2021. 06. 28. 14:58

'싱글톤 컨테이너' 강의에서 궁금증 해결했습니다.

강의를 조금만 더 들었으면 바로 해결했을 궁금증이었네요 ㅎㅎ; 

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

2021. 06. 30. 00:04

스스로 잘 해결하셨습니다^^