
Bean을 사용하려면 @Component 라는 어노테이션을 사용해줘야한다. @Component는 "이 클래스를 정의했으니 빈으로 등록해줘."라는 뜻이다. 그리고 개발자가 직접 컨트롤 할 수 있는 클래스에 사용한다.
(옆에 커피콩 모양이 빈으로 등록된 클래스임,, 얼마나 귀엽게요~~)
@Bean과 유사한 느낌인데 @Bean은 개발자가 컨트롤 불가능한 외부 라이브러리들을 Bean으로 등록하고 싶은 경우에 사용된다.
+ 추가
객체 생성 = 제어의 주체 = 사용자객체 생성 = 제어의 주체 = 스프링 컨테이너가 되는 것을 의미한다!어떤 객체가 사용하는 객체(의존하는 객체)를 직접 만들어 사용하지 않고, 주입 받아 사용하는 방법
메서드를 기준으로 로직에 사용되는 객체를 메서드 안에서 생성하느냐, 밖에서 생성한 객체를 인자로 받느냐 차이다.
장점