教程簡介 ASP.NET WP初學者教程 - 從簡單和簡單的步驟學習ASP.NET WP,從基本到高級概念,包括概述,環境設置,入門,視圖引擎,項目文件夾結構,全局頁面,編程概念,佈局,使用表單,頁面對象模型,資料庫,向資料庫添加數據,編輯資料庫數據,刪除資料庫數據,WebGrid,圖表,使用文件, ...
|
預設註入類型 | 多個同類型Bean | 註入失敗 | 依賴 | 使用目標(@Target) |
@AutoWired | 通過type |
預設首先安裝屬性名稱進行註入 結合@Qualifier註解(value屬性)設置註入的Bean 或通過@Primary註解優先選擇某個Bean,優先順序低於@Qualifier |
可以通過required設置為false忽略 | Spring |
CONSTRUCTOR, METHOD, PARAMETER, FIELD, ANNOTATION_TYPE |
@Resource | 通過bean名稱 | 通過設置name屬性指定Bean,不識別@Primary | 報錯且不可忽略 | javax |
TYPE, FIELD, METHOD |
@Inject | 通過bean名稱 | 沒有屬性,識別@Primary | 報錯且不可忽略 | javax,需手動導入 |
METHOD, CONSTRUCTOR, FIELD |
通過bean名稱註入時,如果是@Component,@Service,@Repository註解,預設按首字母小寫類名稱匹配
補充:
@AutoWired使用:
- CONSTRUCTOR:用於構造時,可用於函數聲明或參數上
- METHOD:set函數時用於函數聲明,用於參數上該方法不會執行;@Bean函數時用於函數聲明或參數上均可
- PARAMETER:見以上兩種用法
- FIELD:常用用法
- 另外,@AutoWired可以用於數組賦值,比如:DemoService有兩個實現類,DemoServiceImpl1和DemoServiceImpl2,可以在參數或函數聲明上使用@AutoWired註解後,參數中用 DemoService[] 接收bean對象,可通過@Order註解控制數組中實現對象的順序