Spring、基本类型属性和集合类型属性的注入

Spring 还可以对基本属性和集合类型属性进行注入:

public interface PersonIService {
	public String getBaseProperty();
	public Set<String> getSets();
	public List<Integer> getList();
	public Properties getProperties();
	public Map<String, String> getMaps();
}


public class PersonServiceImpl implements PersonIService {
	private String baseProperty;
	private Set<String> sets;
	private List<Integer> list;
	private Properties properties;
	private Map<String,String> maps;
	
	
	public Map<String, String> getMaps() {
		return maps;
	}

	public void setMaps(Map<String, String> maps) {
		this.maps = maps;
	}

	public Properties getProperties() {
		return properties;
	}

	public void setProperties(Properties properties) {
		this.properties = properties;
	}

	public List<Integer> getList() {
		return list;
	}

	public void setList(List<Integer> list) {
		this.list = list;
	}

	public Set<String> getSets() {
		return sets;
	}
	
	public String getBaseProperty() {
		return baseProperty;
	}

	public void setBaseProperty(String baseProperty) {
		this.baseProperty = baseProperty;
	}

	public void setSets(Set<String> sets) {
		this.sets = sets;
	}
}

beans.xml:

<bean id="personIService" class="cn.server.impl.PersonServiceImpl">
		<property name="baseProperty" value="value:基本属性1" />
		<property name="sets">
			<set>
				<value>set装配-value1</value>
				<value>set装配-value2</value>
				<value>set装配-value3</value>
			</set>
		</property>
		<property name="list">
			<list>
				<value>11</value>
				<value>12</value>
				<value>13</value>
			</list>
		</property>
		<property name="properties">
			<props>
				<prop key="property1">value1</prop>
				<prop key="property2">value2</prop>
				<prop key="property3">value3</prop>
			</props>
		</property>
		<property name="maps">
			<map>
				<entry key="map1" value="value1" />
				<entry key="map2" value="value2" />
				<entry key="map3" value="value3" />
			</map>
		</property>
	</bean>

测试代码:

@Test
	public void otherTest(){
		ApplicationContext ac = new ClassPathXmlApplicationContext("beans.xml");
		PersonIService personIService=(PersonIService)ac.getBean("personIService");
		System.out.println("========基本属性注入============");
		System.out.println(personIService.getBaseProperty());
		System.out.println("========Set集合类型注入============");
		for(String str : personIService.getSets()){
			System.out.println(str);
		}
		System.out.println("========list集合类型注入============");
		for(Integer i : personIService.getList()){
			System.out.println(i);
		}
		System.out.println("========properties集合类型注入============");
		for(Object key : personIService.getProperties().keySet()){
			System.out.println(key+"="+personIService.getProperties().getProperty(key.toString()));
		}
		System.out.println("========map集合类型注入============");
		for(Object key : personIService.getMaps().keySet()){
			System.out.println(key+"="+personIService.getMaps().get(key));
		}
	}



posted @ 2015-11-10 11:34  Bodi  阅读(600)  评论(0编辑  收藏  举报