
@Component와 @Bean
·
Programming/Spring
@Component와 @Bean의 차이특징@Component@Bean사용 위치클래스 레벨메서드 레벨자동 감지스프링의 컴포넌트 스캔으로 자동 감지 가능스프링이 명시적으로 메서드를 호출하여 빈 생성소스 코드 의존성클래스의 소스 코드가 수정 가능해야 사용 가능제3자 라이브러리 클래스에도 적용 가능유연성간결하지만 인스턴스 생성 로직에 대한 제어 제한로직 추가를 통해 다양한 조건에 따른 빈 생성 가능@Component는 수정 가능한 클래스에만 적용될 수 있다는 점이 의문이 들었지만, 외부 라이브러리 클래스는 코드 수정이 불가능하므로 @Component 애노테이션을 붙일 수 없다는 점을 생각하면 당연하다. 따라서, 외부 라이브러 클래스는 @Bean을 통해 빈 생성이 가능하다.BeanExample might repr..