해결된 질문
작성
·
281
0
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)
[질문 내용]
의존관계 자동 주입.pdf의 6페이지 맨 위에
@Autowired(required = false)
public void setNoBean3(Optional<Member> member) {
System.out.println("setNoBean3 = " + member);
}
이렇게 되어 있는데 (required = false)는 오타인가 싶어서 말씀드립니다.
그리고 5페이지에
@Autowired(required=false): 자동 주입할 대상이 없으면 수정자 메서드 자체가 호출 안 됨
이 내용이 있는데, 수정자 메서드라고 적혀 있기는 하지만 일반 메서드 주입일 때도 마찬가지라고 생각하면 되는 거죠?
수정자 메서드 주입 방식일 때 많이 쓰여서 그냥 수정자 메서드라고 적혀 있는 거라고 생각하긴 하는데 맞나요?
답변 1
1
안녕하세요. 11 1님, 공식 서포터즈 y2gcoder입니다.
의존관계 자동 주입.pdf의 6페이지 맨 위에
@Autowired(required = false)
public void setNoBean3(Optional<Member> member) {
System.out.println("setNoBean3 = " + member);
}
이렇게 되어 있는데 (required = false)는 오타인가 싶어서 말씀드립니다.
=> 맞습니다. Optional로 받을 때는 required 옵션을 false로 주지 않아도 됩니다!
그리고 5페이지에
@Autowired(required=false): 자동 주입할 대상이 없으면 수정자 메서드 자체가 호출 안 됨
이 내용이 있는데, 수정자 메서드라고 적혀 있기는 하지만 일반 메서드 주입일 때도 마찬가지라고 생각하면 되는 거죠?
수정자 메서드 주입 방식일 때 많이 쓰여서 그냥 수정자 메서드라고 적혀 있는 거라고 생각하긴 하는데 맞나요?
=> 생각하신 내용이 맞습니다! 아마 일반 메서드 주입을 사용하는 케이스가 정말 드물기 때문인 것 같습니다.
감사합니다.
답변 감사합니다!