1.集合属性list的用法
有两个类
//person类java
public class Person { private String name; private int age; private List<Car> cars; }
//car类mysql
public class Car { private String name; private String address; private double price; }
一我的可能拥有多辆车,配置文件以下spring
<!-- 配置bean --> <bean id="car" class="com.test.spring.beans.Car"> <property name="name" value="audi"></property> <property name="address" value="shanghai"></property> <!-- <property name="price" value="200"></property> --> </bean> <bean id="car2" class="com.test.spring.beans.Car"> <property name="name" value="ford"></property> <property name="address" value="chengdu"></property> <!-- <property name="price" value="15"></property> --> </bean> <!-- 引用bean --> <bean id="person" class="com.test.spring.beans.Person"> <property name="name" value="zhangsan"></property> <property name="age" value="30"></property> <property name="cars"> <list> <ref bean="car"/> <ref bean="car2"/> </list> </property> </bean>
2.集合属性map的用法
有两个类
//person类sql
public class Person { private String name; private int age; private Map<String, Car> cars; }
//car类数据库
public class Car { private String name; private String address; private double price; private List<Car> cars; }
一我的都多辆车,采用map的key来区分url
<!-- 配置bean --> <bean id="car" class="com.test.spring.beans.Car"> <property name="name" value="audi"></property> <property name="address" value="shanghai"></property> <!-- <property name="price" value="200"></property> --> </bean> <bean id="car2" class="com.test.spring.beans.Car"> <property name="name" value="ford"></property> <property name="address" value="chengdu"></property> <!-- <property name="price" value="15"></property> --> </bean> <!-- 引用bean --> <bean id="person" class="com.test.spring.beans.Person"> <property name="name" value="zhangsan"></property> <property name="age" value="30"></property> <property name="cars"> <map> <entry key="AA" value-ref="car"></entry> <entry key="BB" value-ref="car2"></entry> </map> </property> </bean>
3.集合属性Properties的用法
很明显,Properties属性是用于一些固定的配置信息,例如数据库链接配置信息
//datasource类code
import java.util.Properties; public class DataSource { private Properties properties; }
配置信息xml文件xml
<!-- 配置properties属性值 --> <bean id="dataSource" class="com.test.spring.beans.DataSource"> <property name="properties"> <props> <prop key="username">root</prop> <prop key="password">123456</prop> <prop key="url">jdbc:mysql://192.168.2.11/test</prop> <prop key="driverClass">com.mysql.jdbc.Driver</prop> </props> </property> </bean>
备注:如上的集合都是配置在bean中的,只能被当前bean调用,没法被其余bean公用,以下配置能够公用集合属性class
<bean id="car" class="com.test.spring.beans.Car"> <property name="name" value="audi"></property> <property name="address" value="shanghai"></property> <!-- <property name="price" value="200"></property> --> </bean> <bean id="car2" class="com.test.spring.beans.Car"> <property name="name" value="ford"></property> <property name="address" value="chengdu"></property> <!-- <property name="price" value="15"></property> --> </bean> <!-- 配置独立的集合bean,以供其余的bean引用,须要导入util 命名空间 --> <util:list id="cars"> <ref bean="car"/> <ref bean="car2"/> </util:list> <!-- 引用bean --> <bean id="person2" class="com.test.spring.beans.Person2"> <property name="name" value="zhangsan"></property> <property name="age" value="30"></property> <property name="cars" ref="cars"></property> </bean>