宣告 Bean
要宣告 bean,只需使用 @Bean
註釋註釋方法或使用 @Component
註釋註釋類(註釋 @Service
,@Repository
,@Controller
也可以使用)。
當 JavaConfig 遇到這樣的方法時,它將執行該方法並將返回值註冊為 BeanFactory 中的 bean。預設情況下,bean 名稱將是方法名稱的名稱。
我們可以使用以下三種方法之一建立 bean:
-
使用基於 Java 的配置 :在配置檔案中,我們需要使用 @bean 註釋宣告 bean
@Configuration public class AppConfig { @Bean public TransferService transferService() { return new TransferServiceImpl(); } }
-
使用基於 XML 的配置 :對於基於 XML 的配置,我們需要在應用程式配置 XML 中建立 declare bean,即
<beans> <bean name="transferService" class="com.acme.TransferServiceImpl"/> </beans>
-
註釋驅動的元件 :對於註釋驅動的元件,我們需要將 @Component 註釋新增到我們要宣告為 bean 的類中。
@Component("transferService") public class TransferServiceImpl implements TransferService { ... }
現在所有三個名為 transferService
的豆都可以在 BeanFactory
或 ApplicationContext
中找到。