1. 程式人生 > >Spring注入容器型別List、Map、Properties、Set

Spring注入容器型別List、Map、Properties、Set

下面的例子展示瞭如何注入

  • List – <list/>
  • Set – <set/>
  • Map – <map/>
  • Properties – <props/>

Spring beans

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 import java.util.List; import java.util.Map; import java.util.Properties; import java.util.Set; public class Customer { private List<Object> lists;
private Set<Object> sets; private Map<Object, Object> maps; private Properties pros; //... }

  配置檔案:

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 <bean id="CustomerBean" class="com.mkyong.common.Customer"> <!-- java.util.List --> <property name="lists"> <list> <value>1</value> <ref bean="PersonBean" /> <bean class="com.mkyong.common.Person"> <property name="name" value="mkyongList" />
<property name="address" value="address" /> <property name="age" value="28" /> </bean> </list> </property> <!-- java.util.Set --> <property name="sets"> <set> <value>1</value> <ref bean="PersonBean" /> <bean class="com.mkyong.common.Person"> <property name="name" value="mkyongSet" /> <property name="address" value="address" /> <property name="age" value="28" /> </bean> </set> </property> <!-- java.util.Map --> <property name="maps"> <map> <entry key="Key 1" value="1" /> <entry key="Key 2" value-ref="PersonBean" /> <entry key="Key 3"> <bean class="com.mkyong.common.Person"> <property name="name" value="mkyongMap" /> <property name="address" value="address" /> <property name="age" value="28" /> </bean> </entry> </map> </property> <!-- java.util.Properties --> <property name="pros"> <props> <prop key="admin">[email protected]</prop> <prop key="support">[email protected]</prop> </props> </property> </bean> <bean id="PersonBean" class="com.mkyong.common.Person"> <property name="name" value="mkyong1" /> <property name="address" value="address 1" /> <property name="age" value="28" /> </bean> </beans>

執行:

?
1 2 3 4 5 6 7 8 9 10 11 public class App { public static void main( String[] args ) { ApplicationContext context = new ClassPathXmlApplicationContext("SpringBeans.xml"); Customer cust = (Customer)context.getBean("CustomerBean"); System.out.println(cust); } }

  我們也可以使用ListFactoryBean。The ‘ListFactoryBean‘ class provides developer a way to create a concrete List collection class (ArrayList and LinkedList) in Spring’s bean configuration file.

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 <bean id="CustomerBean" class="com.mkyong.common.Customer"> <property name="lists"> <bean class="org.springframework.beans.factory.config.ListFactoryBean"> <property name="targetListClass"> <value>java.util.ArrayList</value> </property> <property name="sourceList"> <list> <value>1</value> <value>2</value> <value>3</value> </list> </property> </bean> </property> </bean>

  或者:加入:xmlns:util="http://www.springframework.org/schema/util"然後就可以:

         SetFactoryBean The ‘SetFactoryBean‘ class provides developer a way to create a concrete Set collection (HashSet and TreeSet) in Spring’s bean configuration file.

set和上面的一樣:

?
1 2 3 4 5 6 7 8 9 <bean id="CustomerBean" class="com.mkyong.common.Customer"> <property name="sets"> <util:set set-class="java.util.HashSet"> <value>1</value> <value>2</value> <value>3</value> </util:set> </property> </bean>

         MapFactoryBean The ‘MapFactoryBean‘ class provides developer a way to create a concrete Map collection class (HashMap and TreeMap) in Spring’s bean configuration file.

map也一樣:

?
1 2 3 4 5 6 7 8 9 <bean id="CustomerBean" class="com.mkyong.common.Customer"> <property name="maps"> <util:map map-class="java.util.HashMap"> <entry key="Key1" value="1" /> <entry key="Key2" value="2" /> <entry key="Key3" value="3" /> </util:map> </property> </bean>

相關推薦

Spring注入容器型別ListMapPropertiesSet

下面的例子展示瞭如何注入 List – <list/>Set – <set/>Map – <map/>Properties – <props/>Spring beans ? 1 2 3 4 5 6 7 8 9 10 1

Java的LinkedHashSetMap接口可變參數集合嵌套

style map 但是 調用 obj ont 鍵值 etag 數組 1、LinkedHashSet:(1)LinkedHashSet集合保證元素的存入和取出的順序; package com.oracle.demo01; import java.util.HashSet

Spring注入陣列型別——以String陣列為例

標準方法 <bean id="printArry" class="PrintArray"> <constructor-arg name="arry"> <array> <value>aaa</v

Android Studio之maven Central,JCenter(build.gradlegradle-wrapper.propertiesgradle.properties

Android studio 是從哪裡得到庫的? Android Studio是從build.gradle裡面定義的Maven 倉庫伺服器上下載library的。Apache Maven是Apache開發的一個工具,提供了用於貢獻library的檔案伺服器。總的來說,只

Spring 如何使用註解注入集合類listsetmap

首先通過示例來展示,如何在Spring中使用註解注入集合類(list、map、set等) 定義介面InjectService,繼承InitializingBean介面,便於列印Spring注入的例項物件 public interface InjectService extends Initi

SpringListSetMap陣列注入方式中標籤的使用

       在這裡不多說,直接進入正題,在使用Spring時,如果物件例項含有資料或集合屬性時,那我們該如何去配置Spring.xml呢?我們就需要property下的子元素list,set,map

spring心得4--setter注入集合(setlistmapproperties等多種集合,配有案例解析)@基本裝

1. 基本裝配    在spring容器內拼湊bean叫做裝配。裝配bean的時候,需要告訴容器哪些bean以及容器如何使用依賴注入將它們配合在一起。 使用XML裝配(xml是最常見的spring應用系統配置源。)    幾種spring容器都支援使用xml裝配bean

spring 框架 listsetmapProperties陣列注入

package com.zxk.test;import java.util.List;import java.util.Map;import java.util.Properties;import java.util.Set;import org.springframework.context.Applica

Java源碼解析容器ListSetMap

增刪 相同 數組 hashtable 最終 效率 類對象 rem 重復 1:集合 Collection(單列集合) List(有序,可重復) ArrayList 底層數據結構是數組,查詢快,增

C++常用的容器(vectorsetlistmap

C++ STL中最基本以及最常用的類或容器無非就是以下幾個: string vector set list map 下面就依次介紹它們,並給出一些最常見的最實用的使用方法,做到快速入門。 string 首先看看我們C語言一般怎麼使用字串的 c

Spring Boot】配置檔案@ConfigurationProperties,讀取ListMap引數

List application.properties custom.config.config1.folders[0]=/root custom.config.config1.folders[1]=/home/user1 custom.config.config1.folder

python中資料結構容器listdicttupleset)和C++JAVA中的匯出資料型別, 陣列

list(列表):語法:列表形如 [1, 2, 3, 4] [‘小明’,‘小紅’,] ,用中括號括住,裡面是字串、布林,每一項逗號分開。 建立 宣告變數時 中括號、項,建立一個非空的列表。 num_list = [1,2,3,4] 建立一個空列表,之後再修改

Kotlin中SetMapList 容器使用

前言 之前講了Kotlin中基本資料型別和String字串拼接的一些基本用法,這裡學習一下kotlin中陣列和集合容器,其實挺想上來就用kotlin寫頁面的,畢竟那樣有成就感,也不會枯燥無味,但是從java學過來深知基礎的重要,所以還是一步一步來。 陣列宣告 k

STL 容器區別:vectorlistdequesetmap的底層實現

1、set和map 比較 \ set map 共同點 都是無序的儲存元素,只是通過它提供的藉口對裡面的元素進行訪問,底層都是採用紅黑樹實現 不同點 集合,用來判斷某一個元素是不是在一個組裡面,使用

fastjson json字串和JavaBeanListMap及複雜集合型別的相互轉換。

本文主要示例兩部分內容: JavaBean、List、Map、複雜集合 轉換成 json字串; json字串 轉換成 JavaBean、List、Map、複雜集合; 定義POJO: public class A { private Str

Java容器ListArrayListVector及mapHashTableHashMap的區別

List和Map是介面,ArrayList和HashMap分別是它們的實現類. ArrayList和HashMap是非同步的,Vector和HashTable是同步的,所以Vector和HashTable是執行緒安全的,而 ArrayList和HashMap並不是執行緒安全的

java json轉map(複雜混合型別listmap和string)

其中用到了instanceof,所需的jar包 看例子: package json; import java.util.List; import java.util.Map; import net

ListSetMap下各類型的對比

hashtable class ray hashmap 速查 使用 線程同步 highlight ash 1.List和Set: List: 元素有放入順序,元素可重復,查找效率高,插入刪除效率低; Set: 元素無放入順序,元素不可重復,(元素雖然無順序,但元素在Set

Spring MVC 向頁面傳值 MapModel和ModelMap

內容 ros obj model clas mod div java mode 除了使用ModelAndView方式外。還可以使用Map、Model、ModelMap來向前臺頁面創造 使用後面3種方式,都是在方法參數中,指定一個該類型的參數。例如: java類中 @Req

ListSetMap集合大雜燴

鏈接 collect hid 鍵值 oar text 同步 二分 實現 java集合主要分三種:list、set、map;當中list和set都繼承自Collection接口,兩者最大差別是set不能包括反復元素 list的經常使用實現類有: Ar