1、两者的联系和区别
@Component 和 @Bean 是两种使用注解来定义bean的方式。
- @Component一般放在类的前面
- @Bean放在方法前面(方法的返回值是一个类的实例化对象)
@Component:
@Component
public class Student {
private String name = "lkm";
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Bean
@Configuration
public class WebSocketConfig {
@Bean
public Student getStudent(){
return new Student();
}
}
-
Component加在类的前面属于显示的映射关系,很直接的就知道创建是谁的bean
-
Bean加在方法前属于是隐式的映射关系,因为方法返回的是一个类的实例,和Component相比相当于多了一个getStudent()方法进行桥接