基本概念:@Bean 和 @Configuration
Spring Java 配置支援的核心構件是 @Configuration 註解的類和 @Bean 註解的方法。
@Bean 註解用於指示方法例項化、配置並初始化一個新物件,該物件將由 Spring IoC 容器管理。對於熟悉 Spring <beans/> XML 配置的使用者來說,@Bean 註解與 <bean/> 元素扮演相同的角色。您可以將 @Bean 註解的方法與任何 Spring @Component 一起使用。然而,它們最常與 @Configuration Bean 一起使用。
用 @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 容器的各種方法。