1. 程式人生 > >Spring自動裝配的註解用法

Spring自動裝配的註解用法

昨天閒來無事,調了個Spring註解的例項,挺有收穫,小Show下:

使用XML配置檔案時需要寫明要又Spring管理的例項物件的例項名和完整路徑,而這些例項的一般產生方式(單例模式)和命名(類名首字母小寫)一般挺固定,如果需要Spring管理的物件挺多的話用XML配置起來有些麻煩。採用註解的話,只需一兩個註解標籤就可搞定。下面簡單談下自己的理解:

     註解和XML配置檔案道理上是類似的:使用配置檔案只不過是把交由Spring容器管理的物件統一組織了起來,檢視時方便。註解呢是在程式碼裡新增標記,而Spring容器在編譯前後或執行時跟據這些標記完成物件的例項化和注入。

     @Autowired標籤設定在setter方法上表明該方法的引數從Spring容器裡查詢並由Spring完成注入。

     @Component新增在類定義程式碼前表明在Spring容器裡實例化該型別一個物件,預設以類名的首字母小寫形式為物件例項名,也可以自定義指定要例項化的物件名(name="")。另外需要注意:例項化物件的產生方式(singleton/prototype)。

     @Resource使用範圍更廣泛的一個標記,可以用它指定各樣的資源如URL/InputStream/Classpath/xml檔案。。。完全可以用它再指定屬性name實現@Component的效果。

如果用到上面的註解標記,需要在XML配置檔案里加上如下標籤

     <context:annotation-config />
     <context:component-scan base-package="your package。。" />

對於第一個標籤自己實驗後發現有時不加也行,它的作用沒深入研究,以後多接觸後再探討;而第二個標籤如果你用到@Component註解標記那麼它是必須的,它是Spring查詢@Component標記的類從而完成物件例項化所要搜尋的包,如果指定錯了Spring就不會為@Component標記的類生成物件例項,我們使用時會得到空指標。