SpringBean 2

옵션 처리

주입할 스프링 빈이 없어도 동작해야 할 때가 있다. 그런데 @Autowired만 사용하면 required 옵션의 default가 true이기 때문에 자동 주입 대상이 없으면 오류가 발생한다. 자동 주입 대상을 옵션으로 처리하는 방법은 다음과 같다. @Autowired(required=false) : 자동 주입할 대상이 없으면 수정자 메서드 자체가 호출 X org.springframework.lang.@Nullable : 자동 주입할 대상이 없으면 null이 입력 Optional : 자동 주입할 대상이 없으면 Optional.empty가 입력 required= false를 통해 noBean1 자체가 호출이 되지 않은 것을 확인할 수 있다.

Spring/Spring Core 2021.03.18

스프링 빈

스프링 빈과 의존관계 스프링 빈을 등록하고, 의존관계 설정하기 생성자에 @Autowired 가 있으면 스프링이 연관된 객체를 스프링 컨테이너에서 찾아서 넣어준다. 이렇게 객체 의존관계를 외부에서 넣어주는 것을 DI (Dependency Injection), 의존성 주입이라 한다. 이전 테스트에서는 개발자가 직접 주입했고, 여기서는 @Autowired에 의해 스프링이 주입해준다 스프링 컨테이너(Spring Container)에 의해서 자바 객체가 만들어 지게 되면 이 객체를 스프링은 스프링 빈이라고 부름. 등록방법에는 아래 두가지 방법이 있다. 컴포넌트 스캔과 자동 의존관계 설정 @ComponentScan 어노테이션은 어느 지점부터 컴포넌트를 찾으라고 알려주는 역할 @Component는 실제로 찾아서 빈에..

반응형