1. 程式人生 > >spring 配置檔案中如何注入map list set等型別

spring 配置檔案中如何注入map list set等型別

先定義一個bean

import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;

public class MessageBean {
	private String username;
	private String password;
	private int size;
	private List<String> citys;
	private Set<String> friends;
	private Map<Integer,String> books;
	private Properties props;
	
	public void setProps(Properties props) {
		this.props = props;
	}

	public void setFriends(Set<String> friends) {
		this.friends = friends;
	}

	public void setSize(int size) {
		this.size = size;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public void setCitys(List<String> citys) {
		this.citys = citys;
	}

	public void setBooks(Map<Integer, String> books) {
		this.books = books;
	}
}


在xml裡配置
<beans>
	<bean id="userdao"
		 class="com.user.impl.UserDAO">
	</bean>
	<!-- setter方式注入 -->
	<bean id="useraction"
		 class="com.action.UserAction">
		 <property name="userDao" ref="userdao">
		 </property>
	</bean>
	<!-- 構造器方式注入 -->
	<bean id="useraction1"
			 class="com.action.UserAction2">
			 <constructor-arg index="0" ref="userdao"/>
	</bean>
	<!-- 各種型別值注入的寫法 -->
	<bean id="messagebean" 
			class="com.bean.MessageBean">
			<property name="props">
				<props>
					<prop key="url">http://www.sina.com.cn</prop>
					<prop key="username">lisi</prop>
					<prop key="password">123456</prop>
				</props>
			</property>
			
			<property name="books">
				<map>
					<entry key="10" value="playboy">
					</entry>
					<entry key="11" value="java">
					</entry>
					<entry key="12" value="rdis">
					</entry>
				</map>
			</property>
			<property name="friends">
				<set>
					<value>張3</value>
					<value>李4</value>
					<value>王5</value>
				</set>
			</property>
			
			<property name="citys">
				<list>
					<value>北京</value>
					<value>上海</value>
					<value>廣州</value>
				</list>
			</property>
			
			<property name="username">
				<value>admin</value>
			</property>
			<property name="password">
				<value>123456</value>
			</property>
			<property name="size">
				<value>25</value>
			</property>
	</bean>
	
</beans>