상세 컨텐츠

본문 제목

[SpringBoot] @Component와 @Configuration/@Bean

JAVA\Spring

by 박집실 2023. 8. 28. 22:53

본문

Bean과 Component 차이 | 기록하는개발자 | DevAndy (youngjinmo.github.io)

 

Bean과 Component 차이

스프링은 개발의 제어권이 스프링 컨테이너(IoC 컨테이너)에 있다고 한다. 그래서 이를 IoC(Inversion Of Control), 제어의 역전이라고 한다. 스프링이 개발자 대신 객체를 제어하기 위해서는 객체들이

youngjinmo.github.io

[Spring] 빈 등록을 위한 어노테이션 @Bean, @Configuration, @Component 차이 및 비교 - (1/2) - MangKyu's Diary (tistory.com)

 

[Spring] 빈 등록을 위한 어노테이션 @Bean, @Configuration, @Component 차이 및 비교 - (1/2)

기존의 Spring MVC에서는 xml을 활용하여 Bean을 등록하고 있었다. 하지만 프로젝트의 규모가 커짐에 따라 사용하는 요소들을 xml에 등록하는 것이 상당히 번거로워 져서 어노테이션(Annotation, @)를 활

mangkyu.tistory.com

 

@Configuration 으로 빈을 등록할 클래스를 빈 컨테이너에 빈을 등록하고 @Bean으로 해당 메소드에 올려놓으면 등록된 빈을 활용해서 해당 메소드의 기능을 가진 빈을 생성 

(수동으로 개발자가 제어하지 못하는 특정 라이브러리등을 빈으로 등록하고 싶을 때 혹은 수동으로 빈을 컨트롤하고 싶을 때 사용 / @Bean 단독으로 사용하면 싱글톤이 안됨 반드시 @Configuratton과 함께 써야지만 싱글톤이 됨)

 

@Component 을 사용하면 자동으로 스프링에서 component 검색을 진행해서 해당 클래스를 빈으로 등록

관련글 더보기