1.用途不同

@Component多用于标识一个普通的类,而@Bean多用于配置类里面去声明和配置Bean对象

2.使用方式不同

@Component是类级别的注解,Spring可以扫描到配置此注解的这些类并把它们注入到SpringIOC容器中,@Bean是修饰在方法上的,表示此方法返回一个Bean对象注入到SpringIOC容器中

3.控制权不同

@Component修饰的类是由Spring框架来统一管理和创建的,而@Bean允许开发人员手动控制Bean的创建和配置。