Spring中屬性注入方式

2021-08-18 09:50:30 字數 1899 閱讀 2640

public inte***ce injection

public class user implements injection

}

public class user

}

public class user

}

spring中支援後兩種。並且從spring2.5版本開始引入了命名空間p.可以使用命名空間p:注入屬性。從spring3.0開始可以使用spel(spring expression language)注入屬性,語法:#;

加上下面這行即可使用命名空間p

xmlns:p

=""

p:carname="特斯拉" p:price="800000"/>

p:age="20" p:name="扶蘇" p:car-ref="car"/>

spel注入屬性

value="#"/>

value="#"/>

麥克雷漢尼拔巨石強森

蓋倫蓋倫

亞索

root

root

使用註解方式注入需要先在配置檔案中加上:

開啟註解自動掃瞄。不需要配置bean。

@controller("usercontroller")

@scope("singleton")

public class usercontroller

public void adduser()

@postconstruct

public void setup()

@predestroy

public void teardown()

}

@controller("usercontroller")加在類前面,相當於bean配置中的id屬性。

@scope("singleton")相當於bean配置中的scope屬性,預設為singleton。prototype為多例。

@value(value ="usercontrollerinfo"):配置於普通屬性前,為其設定值

@autowired @qualifier("userservice"):配置於引用屬性前,開啟該屬性自動裝配。相當於@resource(name = "userservice")。

@postconstruct:配置於初始化方法前,指定該方法為初始化方法。

@predestroy:配置於銷毀方法前,指定該方法為銷毀方法。(銷毀方法只對singleton有效)

兩種方式結合使用。使用xml註冊bean,使用註解進行屬性的注入。

配置檔案中:

配置檔案中可以不用進行屬性的注入,只是宣告註冊bean即可.

具體類中:

@controller

public class usercontroller

@postconstruct

public void setup()

@predestroy

public void teardown()

// public void setservice(userservice service)

}

具體類中可以不用對屬性提供setter方法,使用註解開啟自動裝配即可。

spring配置詳解 屬性注入 set方式

spring當中屬性注入,關鍵的部分了,spring中的屬性注入,這個屬性注入其實也算配置,spring中的屬性注入,那spring的屬性注入呢,一共有三種方式,我今天感覺方式有點多,spring注入方式,剛才我說了有三種,好像四個,分別是set方法注入,建構函式注入,p命名空間注入,和spel注入...

spring注入方式

一 二 三種注入方式 1.通過set方法賦值 賦值為物件2.通過構造器賦值 3.通過p標籤賦值 當屬性值的型別相同時,常需要type來區分 注意 必須提供無參構造給bean4.自動裝配 自動尋找beanid 類的屬性值 自動尋找其他bean的型別 class 是否與該類的ref屬性型別一致 是否與該...

spring 注入方式

第一種 構造器注入 第二種 set依賴注入 bean id address class com.kuang.pojo.address property name address value 西安 property bean bean id student class com.kuang.pojo.s...