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

훈님의 프로필 이미지

작성한 질문수

스프링 핵심 원리 - 기본편

섹선5 [싱글톤 방식의 주의점] 질문

작성

·

190

·

수정됨

0

안녕하세요, 싱글톤 테스트 코드에서 OrderService, MemberService 인터페이스의 구체인 OrderServiceImpl과 MemberServiceImpl 클래스에서 각각 생성자로 주입되어져 있는 memberRepository 객체를 꺼내서 프린트해봤는데 서로 다른 객체라고 뜹니다 뭐가 문제일까요? 코드는 강의 교안과 일치합니다

답변 2

1

안녕하세요. 훈님, 공식 서포터즈 y2gcoder입니다.

테스트 코드를 보니 ConfigurationSingletonTest 에서 발생하는 문제로 보입니다.

AppConfig 코드를 보여주시겠습니까?

혹시 AppConfig의 memberRepository() 메서드에 static 이 붙어있다면 지워주십쇼! 자세한 이유는 다음 링크(클릭)을 참고해보시겠습니까?



감사합니다.

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

감사합니다. private final로 선언되어있던 memberRepositor를 public으로 변경하였더니 같은 객체라고 뜨고 테스트도 잘 되는 것 같습니다

0

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

--추가--
@Autowired 어노테이션을 통해 의존 관계를 주입시켜서 출력해보면 같은 객체라고 나오는데 @Configuration 어노테이션을 통해 스프링 컨테이너가 자동으로 객체를 관리하도록 해서 출력하면 다른 객체라고 나옵니다..혹시 스프링 컨테이너 문제일까요?

 

image(스프링 컨테이너 객체 정보를 프린트로 찍어봤습니다)

훈님의 프로필 이미지

작성한 질문수

질문하기