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>