Spring01 ioc之依賴注入

2021-10-07 17:01:25 字數 1405 閱讀 3059

依賴注入知識點:

spring中的依賴注入:

ioc的作用:

降低耦合(依賴關係)

依賴關係的管理:

以後都交給spring來維護

在當前類需要用到其他類的物件,由spring為我們提供,我們只需要在配置檔案中說明

依賴關係的維護:

就稱之為依賴注入

依賴注入:

能注入的資料: 有三類

基本型別和string

其他bean型別(在配置檔案中或者註解配置過的bean)

複雜型別/集合型別

注入的方式: 有三種

第一種: 使用建構函式提供

第二種: 使用set方法提供

第三種: 使用註解提供

1 建構函式注入:

使用的標籤 constructor-arg

標籤出現的位置: bean標籤的內部

標籤中的屬性:

type:

index:

name: 用於指定建構函式中指定名稱的引數賦值

***************==以上三個用於指定給建構函式中哪個引數賦值********************

value: 用於提供基本型別和string型別的資料

ref: 用於指定其他的bean類資料. 它指的就是在spring的ioc核心容器**現過的bean物件

優勢: 在獲取bean物件時,注入資料是必須的操作,否則物件無法建立成功

劣勢: 改變了bean物件的例項化方式,使我們在建立物件時, 如果用不到這些資料,也必須提供

2 set方法注入: (常用)

使用的標籤 property

標籤出現的位置: bean標籤的內部

標籤中的屬性:

name: 用於指定建構函式中指定名稱的引數賦值

value: 用於提供基本型別和string型別的資料

ref: 用於指定其他的bean類資料. 它指的就是在spring的ioc核心容器**現過的bean物件

優勢: 建立物件沒有明確的限制, 可以直接使用預設建構函式

劣勢: 不能限定某個引數的限制

2 複雜屬性注入:

用於給list結構集合注入的標籤: list array set

用於給map結構集合注入的標籤: map props

結構相同,標籤可以互換

bean,xml檔案:

<?xml version="1.0" encoding="utf-8"?>

aaabbbccc

listaa

listbb

listcc

setaaa

setbbb

propsa

propsb

**託管: 

案例: 

spring 之 ioc 依賴注入

關於bean的名稱,這裡有條預設的規則,就是類的名稱,然後第乙個字母小寫 依賴注入 xml方式 通過setter方法注入依賴 元素的 property 子元素指明了使用它們的set方法來注入。可以注入任何東西,從基本型別到集合類,甚至是應用系統的bean。這種方式的缺點是你無法在其它地方重用這個pe...

spring 依賴注入之 Resource注入

public propertyvalues postprocessproperties propertyvalues pvs,object bean,string beanname catch throwable ex return pvs private injectionmetadata fin...

spring技術內幕5 IoC容器的依賴注入

1 當spring ioc容器完成了bean定義資源的定位 載入和解析註冊以後,ioc容器中已經管理類bean定義的相關資料,但是此時ioc容器還沒有對所管理的bean進行依賴注入,依賴注入在以下兩種情況發生 1 使用者第一次通過getbean方法向ioc容器索要bean時,ioc容器觸發依賴注入。...