Spring配置檔案中的Bean之間的關係

2021-08-03 20:58:25 字數 796 閱讀 1887

前邊我們講過了spring的自動裝配的特性,即可以根據指定bean的屬性autowire為byname名稱和bytype型別裝配,根據屬性裝配要求類的set***()中的***必須和bean中的id一致;根據型別裝配要求類屬性的型別必須和bean的class一致(根據型別裝配要求當前ioc容器中之能有乙個滿足型別匹配的bean,否則無法確認哪乙個合適,就無法匹配)。今天我們來說一說在ioc容器中配置的bean節點之間可以存在的關係。

1. 直接引用

若把乙個bean的ref指向另乙個bean的id,那麼後者就是被前者引用為自己的例項屬性了。

2. 繼承

① 當bean之間的屬性大致相同時,我們為了簡化**就可以讓子bean繼承父bean。子bean就可以擁有父bean的部分屬性,同時子bean也可以覆蓋父bean的屬性內容。需要注意的是,子bean並非繼承了父bean的所有屬性,如:abstract和autowire屬性就不會被子bean繼承。

② bean除了可以配置在ioc容器中用於建立例項之外,也可以用於當做父bean模板。如果只希望某個bean當做父bean模板,那麼可以將這個bean的屬性abstract設定為true。一旦這個bean被設定成模板bean,那麼這個bean就無法再ioc初始化的時候建立例項了(不可被例項化,也不可被指向)。

3.依賴

spring中允許通過depends-on屬性指定當前bean需要依賴的bean。依賴的作用呢是為了確保在當前bean之前要求被依賴的bean節點存在且可以被例項化。

如果某個bean依賴於多個bean,那麼可以通過逗號、空格的方式配置bean的名稱。

Spring中的配置檔案檔案位置

org.springframework.web.context.contextloaderlistenerspring就會被自動載入 contextconfiglocation這裡寫路勁 注 以上路徑只是舉例,具體使用還是要針對真是專案的 1 spring配置檔案在web inf下面 這種情況你可以...

Spring配置檔案中的import

在實際的專案開發中,我們往往會分為很多不同的包,如果遇見為不同的包都設定spring配置檔案的情況,都寫在乙個總的配置檔案中,難免會造成配置檔案內容臃腫,不易閱讀的情況。在spring中,可以把配置檔案分散到各個模組中,然後在總的配置檔案中通過import元素引入這些配置檔案 1.預設情況下,使用相...

spring配置檔案

1 配置檔案的簡化 1 屬性的 property name foo value foovalue value property 簡化為 property name foo value foovalue 2 引用bean property name foo ref bean foobean prope...