一:配置Map属性
1.java.util.Map通过<map>标签定义,<map>标签里可以使用多个<entry>作为子标签,每个里面都包含一个键和一个值
2.必须在key属性定义键。
3.因为键和值的类型没有限制,所以可以自由的为他们指定<value>,<value-ref>,<bean>或null元素。
4.可以将Map的键和值作为<entry>的属性定义,简单的常量使用key和value定义,bean引用通过key-ref和value-ref来定义
<!-- 配置Map属性值-->
<bean id="newPerson" class="com.collection.dhx.NewPerson">
<property name="name" value="Jike"></property>
<property name="age" value="23"></property>
<property name="cars">
<!--使用map节点及map的entry子节点配置map类型的成员变量
key:代表键,自主定义
value-ref:代表指定的bean
-->
<map>
<entry key="AA" value-ref="car"></entry>
<entry key="BB" value-ref="car2"></entry>
<entry key="BB">
<bean id="car" class="com.dhx.Car">
<property name="brand" value="heilong"></property>
<property name="corp" value="yunnan"></property>
<property name="maxSpeed" value="1234"></property>
</bean>
</entry>
</map>
</property>
</bean>
2.如何配置 properties属性值
1.创建DataSource类
package com.collection.dhx;
import java.util.Properties;
public class DataSource {
private Properties properties;
public Properties getProperties() {
return properties;
}
public void setProperties(Properties properties) {
this.properties = properties;
}
@Override
public String toString() {
return "DataSource [properties=" + properties + "]";
}
}
2.在applicationContext.xml中配置bean
<!--配置properties属性值 -->
<bean id="dataSource" class="com.collection.dhx.DataSource">
<property name="properties">
<!--使用props节点及prop子节点为properties属性赋值 -->
<props>
<prop key="user">root</prop>
<prop key="password">1234</prop>
<prop key="jdbcurl">jdbc:mysql:///test</prop>
<prop key="driverClass">com.mysql.jdbc.driver</prop>
</props>
</property>
</bean>
3.最后在Main类打印
package com.collection.dhx;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Main {
public static void main(String[] args) {
ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");
DataSource dataSource=(DataSource) ctx.getBean("dataSource");
System.out.println(dataSource);
}
}