@Component 가장 일반적인 형태의 어노테이션으로, 특정 역할에 종속되지 않는 일반적인 Spring bean을 나타낸다.공통적인 기능을 제공하는 유틸리티 클래스나, 특정 계층에 속하지않는 일반적인 컴포넌트를 정의할 때 사용된다. @Repository데이터 엑세스계층의 bean을 의미한다. @Service비지니스 계층의 bean을 의미한다. @Controller프레젠테이션 계층의 bean을 의미한다. Repository, Service, Controller 모두다 Component를 가지고있는 멀티 어노테이션이다. 그렇다면 각 어노테이션에 @Component를 사용할 순 없나? 정답은 불가능하지 않다. @Controller, @Service, @Repository 모두 @Component를 함유한 멀..