@Inject java
@Inject支持構造函數、方法和字段註解,也可能使用於靜態實例成員。可註解成員能夠是任意修飾符(private,package-private,protected,public)。注入順序:構造函數、字段,而後是方法。父類的字段和方法注入優先於子類的字段和方法,同一類中的字段和方法是沒有順序的。 spring
@Inject註解的構造函數能夠是無參或多個參數的構造函數。@Inject每一個類中最多註解一個構造函數。 ide
在字段註解: 函數
在方法上註解: 測試
@Inject MethodModirers ResultType Identifier(FormalParameterList ) Throws MethodBody this
[上述翻譯:inject的doc文檔,翻譯很差敬請諒解]
spa
構造函數註解: .net
SpringUtil類: 翻譯
---這是房屋構造函數---
---這是人的構造函數---
張三 orm
上述例子在Spring3.1下測試成功,在Spring3.1下,每一個構造函數只初始化一次及默認的單例形式,我的感受若是脫離Spring環境應該每次用都會實例化新的對象,固然根據實現的jar包不一樣而不一樣,要不javax.inject下的@Singleton註解就沒有什麼用途了。
@Named
@Named和Spring的@Component功能相同。@Named能夠有值,若是沒有值生成的Bean名稱默認和類名相同。
例如:
@Qualifier
任何人均可以定義一個新的修飾語,一個qualifier註解應該知足以下條件:
下面是Qualifier的例子:
Genre註解類:
測試類:
--TeacherDAO--
0
我的對@Qualifier的理解:
使用該註解標記該類只建立一次,不能被繼承。通常在類上用該註解。