Spring揭秘 九 基於註解的依賴注入3

2021-07-25 07:42:37 字數 814 閱讀 2554

spring2.5提供的基於註解的依賴注入,除了可以使用spring提供的@autowired和@qualifier來標註相應類定義之外,還可以使用jsr250的@resource。

@resource與@autowired不同,它遵循的是byname自動繫結形式的行為準則:

public

class

fxnewsprovider

@resource同樣可以標註於屬性域或者方法之上。

到目前為止,我們還是需要將相應的物件的bean定義乙個個地新增到ioc容器的配置檔案中。與之前唯一的區別就是,不用在配置檔案中明確指定依賴關係了。既然使用註解來表達物件之間的依賴注入關係,那為什麼不搞的徹底一點兒,將那些幾乎光禿禿的bean定義從配置檔案中徹底消滅呢?classpath-scanning的功能正是因此而誕生的。

使用相應註解對組成應用程式的相關類進行標註之後,classpath-scanning功能可以從頂層包開始掃瞄。當掃瞄到某個標註了相應的註解之後,就會提取該類的相關資訊,構建對應的beandefinition,然後把構建完的beandefinition註冊到容器。

classpath-scanning功能的觸發是由決定的。

預設掃瞄的註解型別是@component。不過,在@component語義基礎上細化後的@repository、@service和@controller也同樣可以獲得的青睞。

在掃瞄相關類定義並將它們新增到容器的時候,會使用一種預設的命名規則,來生成那些新增到容器的bean定義的名稱。如果想改變這一預設行為,可以指定乙個自定義的名稱。

@component(「myservice」)

Spring基於annotation的依賴注入實現

spring3.0 以前,使用 xml 進行依賴配置幾乎是唯一的選擇。spring 3.0 的出現改變了這一狀況,它提供了一系列的針對依賴注入的註解,這使得spring ioc 在 xml 檔案之外多了一種可行的選擇。1 將類標識為 bean 使用 repository service contro...

基於註解的spring

spring ioc容器的2種形式 儲存bean的形式 獲取bean的形式 建立ioc容器物件 從ioc容器中獲取bean例項 student student student context.getbean student 儲存bean的形式 就是在方法名前加 bean註解,bean的id就是方法名...

spring 基於註解的spring配置

spring是乙個基於ioc和aop的結構j2ee系統的框架 ioc 反轉控制 是spring的基礎,inversion of control 簡單說就是建立物件由以前的程式設計師自己new 構造方法來呼叫,變成了交由spring建立物件 di 依賴注入 dependency inject.簡單地說...