Spring:@Component與@Bean我知道@Component在Spring 2.5中引入了注釋,以便通過使用類路徑掃描來消除xml bean的定義。@Bean是在3.0版本中引入的,可以用來@Configuration完全擺脫xml文件并使用java配置。是否可以重復使用@Component注釋而不是引入@Bean注釋?我的理解是,最終目標是在兩種情況下都創建bean。
3 回答

元芳怎么了
TA貢獻1798條經驗 獲得超7個贊
@Component優先 用于元件掃描和自動布線。
什么時候應該使用@Bean?
有時自動配置不是一種選擇。什么時候?讓我們假設您想要連接來自第三方庫的組件(您沒有源代碼,因此您無法使用@Component注釋其類),因此無法進行自動配置。
所述@Bean注釋返回一個對象該彈簧應在應用程序上下文豆注冊。方法的主體承擔負責創建實例的邏輯。

不負相思意
TA貢獻1777條經驗 獲得超10個贊
讓我們考慮一下我需要具體的實現,具體取決于一些動態狀態。 @Bean
對于那種情況是完美的。
@Bean@Scope("prototype")public SomeService someService() { switch (state) { case 1: return new Impl1(); case 2: return new Impl2(); case 3: return new Impl3(); default: return new Impl(); }}
然而,沒有辦法做到這一點@Component
。
添加回答
舉報
0/150
提交
取消