天天看點

spring裝配集合

前面我們已經了解了怎樣使用spring裝備簡單的屬性(使用value屬性)和引用其它bean的屬性(使用ref屬性)。可是value和ref僅在Bean的屬性值是單個值的情況下才實用。當bean的屬性值是複數時-----假設屬性的類型是集合。

當配置集合類型的bean屬性時。spring提供了4種類型的集合配置元素,例如以下。

集合元素

用途

<list>

裝配list類型的值,同意反複

<set>

裝配set類型,不同意反複

<map>

裝配map類型的值,名稱和值能夠是随意類型

<props>

裝配properties類型的值,名稱和值必須都是String類型

一、裝配List、  Set、  Array

以下來看看<list>

spring配置:

能裝配List、Set、Array(是String類型的時候能夠)

執行測試main方法:

輸出結果:

Roles [roleName=輔導員, users=[Users [name=張三], Users [name=李四], Users [name=李四]]]

<set>元素來裝配集合類型或者數組類型:

輸出結果:

Roles [roleName=輔導員, users=[Users [name=張三], Users [name=李四]]]

二、裝配<map>集合:

執行測試main方法。輸出結果:

Roles [roleName=輔導員, users={USERS1=Users [name=張三], USERS2=Users [name=李四]}]

<map>中的<entry>元素由一個鍵和一個值組成,鍵和值能夠是簡單類型,也能夠是其它的Bean的引用。

這些屬性将幫助我們指定<entry>的鍵和值

屬性

key

指定map中entry的鍵為String

key-ref

指定map中entry的鍵為String上下文其它Bean的引用

value

value-ref

三、裝配Properties集合

Roles [roleName=輔導員, users={AGE=19, USERS=張三}]

四、裝配空值

除了為bean的屬性或者構造器參數裝配其它随意類型的值外,Spring還能夠裝配一個空值。或者更準确的講,Spring能夠裝配null值。

Roles [roleName=輔導員, users=null]