[JAVA] @Component, @Service, @Repository 차이 – 스프링 개발자를 위한 실전 가이드
Spring 애플리케이션을 개발하다 보면 @Component, @Service, @Repository 같은 어노테이션을 자주 접하게 됩니다. 이들 모두 Spring Bean으로 등록된다는 공통점이 있지만, 의미와 역할, 그리고 내부 처리 방식에서 차이가 존재합니다.이 세 어노테이션의 차이를 정확하게 짚고, 언제 어떤 것을 써야 하는지 실무 관점에서 정리합니다. 1. 공통점 – 모두 Component 스캔 대상먼저 이 세 가지 어노테이션은 모두 Spring의 Component 스캔 대상입니다. 즉, @Component를 기반으로 확장된 특수 목적의 세부 어노테이션들입니다.@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documented@Co..