반응형

Bean이란?

어플리케이션의 객체들이 설정정보와 함께 컨테이너에 등록되는 것으로 bean 등록 방법으로는 두가지가 있다.

 

1. @Component를 사용한 Component Scanning

클래스 선언부에 @Componen를 선언하여 streotype(@Service, @Repository, @Controlle) 등 어노테이션이 부여된 Class들을 자동으로 Scan하여 Bean으로 등록한다.


2. 빈 설정파일에 직접 빈 등록(@Configuration, @Bean)

자바 설정 클래스를 이용하는 것으로 @Configuration을 클래스 선언부 앞에 추가하고 특정 타입을 리턴하는 메소드에 @Bran을 선언하면 빈객체가 생성된다.

 

의존성 주입(DI : Dependency Iinjection)

Spring은 @Autowired를 사용하여 의존성 주입을 제공하는데 이 방법은 외부로부터 객체를 받아 사용하는 것으로 재사용성을 높이고 객체간 결합도를 줄여준다.

 

의존성 주입에는 생성자 주입,  필드 주입, 수정자 주입 3가지 방법이 있지만 순환참조 방지와 불변성 때문에 생성자 주입을 권장한다.

 

생성자 주입

 

※ @Autowired로 필드 주입한 Bean을 차지 못하는 경우 발생

이미 주입된 클래스를 new로 재생성하여 사용하면 주입된 Bean을 사용하지 못하고 nullPointException이 나온다.

 

반응형

'Spring' 카테고리의 다른 글

[스프링] 스프링(Spring)이란?  (0) 2023.07.05
JWT 토큰이란?  (0) 2023.04.19
스프링 시큐리티(Spring Security)란?  (0) 2023.04.17
스프링부트 외장서버 구동  (0) 2022.08.08
스프링 부트 프로젝트 생성하기  (0) 2022.07.11

+ Recent posts