1. 注解@Component @Repostory @Service @Controller @Component 的作用心相同; 和@Bean 一样会产生一个对象来被IOC容器管理;这些注解都你能够为管理bean 指定name等属性。
2. 注解名字不同,为分层做了更好的准备。
区别:
@Component 注解使用在类上,只适用于生成自定义的类对象。@Bean 注解使用在方法上。使用时必须 要使用@Configuration 或@Component 注解。可以生成自定义的类或其他工具包的对象。
@Component 一般使用无参构造方法来构造生成对象给IOC 容器管理。逻辑简单,单时不灵活。@Bean 注解使用注解方法,返回对象交给IOC 容器管理。需要自己定义对象的生成逻辑。相对复杂,但是可以解决一些较为复杂的逻辑。
@configuration 不需要容器管理的类,来初始化对象。