Spring框架中自動裝配模式的區別


spring的自動裝配功能的定義:無須在Spring配置文件中描述javaBean之間的依賴關系(如配置<property>、<constructor-arg>)。IOC容器會自動建立javabean之間的關聯關系。

簡而言之,一個類就是一個Bean,Spring框架是一個Bean容器,替我們管理這些Bean。類似於舞台劇,需要很多角色,Spring就是來組織各個角色之間的關系,然后對這些角色進行調動。

在Spring框架中共有5種自動裝配,讓我們逐一分析。

Spring框架中自動裝配模式的區別

 

no:這是Spring框架的默認設置,在該設置下自動裝配是關閉的,開發者需要自行在bean定義中用標簽明確的設置依賴關系。

byName:該選項可以根據bean名稱設置依賴關系。當向一個bean中自動裝配一個屬性時,容器將根據bean的名稱自動在在配置文件中查詢一個匹配的bean。如果找到的話,就裝配這個屬性,如果沒找到的話就報錯。

byType:該選項可以根據bean類型設置依賴關系。當向一個bean中自動裝配一個屬性時,容器將根據bean的類型自動在在配置文件中查詢一個匹配的bean。如果找到的話,就裝配這個屬性,如果沒找到的話就報錯。

constructor:造器的自動裝配和byType模式類似,但是僅僅適用於與有構造器相同參數的bean,如果在容器中沒有找到與構造器參數類型一致的bean,那么將會拋出異常。

autodetect:該模式自動探測使用構造器自動裝配或者byType自動裝配。首先,首先會嘗試找合適的帶參數的構造器,如果找到的話就是用構造器自動裝配,如果在bean內部沒有找到相應的構造器或者是無參構造器,容器就會自動選擇byTpe的自動裝配方式。

以上就是對Spring框架中5種自動裝配的闡述,歡迎大家一起交流學習。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM