@Component 和 @Configuration 区别:
1.从定义来看, @Configuration 注解本质上还是 @Component,因此 context:component-scan/ 或者 @ComponentScan 都能处理@Configuration 注解的类。
2.配置了@Component的类没有通过动态代理来代理@Bean方法的调用,调用该方法返回的是不同实例
3.配置了@Configuration的类是有通过动态代理来代理@Bean方法的调用的,因此调用该方法返回的都是同一个实例