스프링 부트
@Bean과 @Component의 차이점
명품호세
2021. 5. 13. 20:45
@Bean : 개발자가 컨트롤이 불가능한 외부 라이브러리들을 Bean으로 등록하고 싶을때 사용한다.
Ex) QueryDSL을 사용할때 JPAQueryFactory를 사용해야 하는데 QueryDSL을 사용하는 곳마다 주입받는 코드를 작성하기 귀찮다. 그럴때 사용할 수 있다.
@Component : 개발자가 직접 만들어 사용하는 Class들의 경우 @Component를 사용한다.
Ex) API Request를 받기위해 컨트롤러를 만들었을때 그 컨트롤러를 Component로 등록해 사용한다.