Spring 定义Bean的几种方式
链接: Spring中bean的注入方式.
可以通过三种不同的方式定义Spring bean:
1.使用构造型@Component注释(或其衍生物)注释你的类
2.编写在自定义Java配置类中使用@Bean注释的bean工厂方法
3.在XML配置文件中声明bean定义
一:使用@component
在类上使用@Component注释,在运行时,Spring会找到所有使用@Component或其派生类进行注释的类,并将它们用作bean定义。查找带注释的类的过程称为组件扫描
@Component
class MySpringBeanClass {
//...
}
如果某个类属于某个外部库而你无法使用@Component进行注释,你必须在自定义bean的配置类中使用@ Bean注释创建工厂方法.
以下一个带有单个bean工厂方法的示例配置类:
@Configuration
class MyConfigurationClass {
@Bean
public NotMyClass notMyClass() {
return new NotMyClass();
}
}
Spring使用工厂方法在运行时创建实际对象。如你所见,该方法只返回一个类的新实例。如果某个类属于某个外部库而你无法使用@Component进行注释,则使用@Bean创建工厂方法是唯一的选择。