• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

@Autowired 에 대해 질문있습니다.

19.02.08 14:15 작성 조회수 105

0

@Autowired를 멤버변수와 생성자위에 선언하는 방법 두가지를 알려주셨습니다.

appContext.xml에서 bean 객체가 여러개일 경우 @Qualifer를 활용하여 에러를 해결할 수 있다고

설명하셨는데

@Autowired

@Qualifer("usedDao")

멤버 변수 위에는 선언이 가능하지만 생성자 위에서는 선언이 에러를 일으키드라구요.

@Qualifer를 사용하기 위해서는 멤버변수에서만 사용이 가능한가요?

답변 1

답변을 작성해보세요.

4

자바짱님의 프로필

자바짱

2020.03.03

생성자나 메소드에 @Qualifer 애노테이션을 쓸 때에는 파라미터에 직접 적용해야합니다.

@Autowired

public WordSearchService(@Qualifier("usedDao") WordDAO wordDAO) {

		this.wordDAO = wordDAO;

	}

매개변수의 인자 개수가 여러개이면 컨테이너가 어떤 빈객체인지 알아차리지 못하여 exception이 발생하기 때문입니다.