@Autowired 옵션

wangjh789·2022년 7월 24일
0
	@Autowired
    public void setMemberRepository(MemberRepository repository){
    	this.memberRepository = repository;
    }

기존으로 주입할 빈(MemberRepository)이 존재하지 않는다면 에러를 뱉어낸다.

@Autowired(required = false)

	@Autowired(required = false)
    public void setMemberRepository(MemberRepository repository){
    	this.memberRepository = repository;
    }

필수적이지 않은 의존관계의 경우 주입할 빈이 없다면 (required = false)을 이용해 수정자가 자체가 호출되지 않게 한다.

@Nullable

	@Autowired
    public void setMemberRepository(@Nullable MemberRepository repository){
    	this.memberRepository = repository;
    }

@Nullable 을 이용해 대상 빈이 등록되어 있지 않아도 null을 반환하고 수정자가 호출된다.

Optional<>

	@Autowired
    public void setMemberRepository(Optional<MemberRepository> repository){
    	this.memberRepository = repository.get();
    }

java8 문법 Optional을 이용해 빈이 등록되어 있지 않으면 Optional.empty를 반환하고 수정자가 호출된다.

profile
기록

0개의 댓글