|
对于最新稳定版本,请使用 Spring Framework 7.0.6! |
基本概念:@Bean 和 @Configuration
Spring 的 Java 配置支持中的核心组件是使用 @Configuration 注解的类和使用 @Bean 注解的方法。
@Bean 注解用于指示一个方法实例化、配置并初始化一个新的对象,该对象将由 Spring IoC 容器进行管理。对于熟悉 Spring 的 <beans/> XML 配置的开发者来说,@Bean 注解所起的作用与 <bean/> 元素相同。你可以在任何 Spring 的 @Bean 中使用带有 @Component 注解的方法,但它们最常与 @Configuration 配置类一起使用。
使用 @Configuration 注解一个类,表明其主要用途是作为 bean 定义的来源。此外,@Configuration 类允许通过在同一类中调用其他 @Bean 方法来定义 bean 之间的依赖关系。
最简单的 @Configuration 类如下所示:
-
Java
-
Kotlin
@Configuration
public class AppConfig {
@Bean
public MyServiceImpl myService() {
return new MyServiceImpl();
}
}
@Configuration
class AppConfig {
@Bean
fun myService(): MyServiceImpl {
return MyServiceImpl()
}
}
前面的 AppConfig 类等同于以下 Spring <beans/> XML:
<beans>
<bean id="myService" class="com.acme.services.MyServiceImpl"/>
</beans>
以下章节将深入讨论 @Bean 和 @Configuration 注解。
但首先,我们先介绍使用基于 Java 的配置来创建 Spring 容器的各种方式。