須要 jar 包java
commons-logging-1.1.1.jar
spring-beans-4.0.2.RELEASE.jar
spring-context-4.0.2.RELEASE.jar
spring-core-4.0.2.RELEASE.jar
spring-expression-4.0.2.RELEASE.jarmysql
applicationContext.xmlspring
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd"> <!-- 配置 bean class: bean 的全類名, 經過反射的方法在 IOC 容器中建立 Bean, 使用必需要求有無參構造函數 id: 標識容器中的 bean, id 惟一 --> <bean id="hellospring" class="com.anqi.hello.HelloSpring"> <property name="name" value="anqi"></property> </bean> <!-- 經過構造方法來配置 bean 的屬性 --> <bean id="car" class="com.anqi.hello.Car"> <constructor-arg value="Audi" index="0"></constructor-arg> <constructor-arg value="Shanghai" index="1"></constructor-arg> <constructor-arg value="300000" index="2"></constructor-arg> </bean> <!-- 使用構造器注入屬性值能夠指定參數的位置和參數的類型! 以區分重載的構造器! --> <bean id="car2" class="com.anqi.hello.Car"> <constructor-arg value="Baoma" index="0"></constructor-arg> <constructor-arg value="Shanghai" index="1"></constructor-arg> <constructor-arg value="240" type="int"></constructor-arg> </bean> <bean id="car3" class="com.anqi.hello.Car"> <constructor-arg value="Baoma3" index="0"></constructor-arg> <!-- 若是字面值包含特殊字符 能夠用<![CDATA[]]> 包裹起來 --> <!-- 字面值就是基本數據類型及其包裝類, 以及 String 類 --> <!-- 屬性值也能夠使用 value 節點來進行配置 --> <constructor-arg index="1"> <value><![CDATA[<shanghai3]]></value> </constructor-arg> <constructor-arg value="2403" type="int"></constructor-arg> </bean> <bean id = "person" class = "com.anqi.hello.Person"> <property name="name" value="Anqi"></property> <property name="age"> <value>25</value> </property> <!-- <property name="car" ref="car2"></property> 與下面代碼效果一致--> <!-- <property name="car"> <ref bean="car2"/> </property> --> <!-- 內部 bean 不能被外部引用, 只能在內部使用--> <property name="car"> <bean class="com.anqi.hello.Car"> <constructor-arg value="fute"></constructor-arg> <constructor-arg value="Beijing"></constructor-arg> <constructor-arg value="28000" type="double"></constructor-arg> </bean> </property> </bean> <bean id="person2" class="com.anqi.hello.Person"> <constructor-arg value="LiChen"></constructor-arg> <constructor-arg value="18"></constructor-arg> <!-- 測試賦值 NULL 值 --> <!--<constructor-arg><null/></constructor-arg> --> <constructor-arg name="car" ref="car2"></constructor-arg> <!-- 爲級聯屬性賦值,必須有對應的 setter 方法 --> <!-- 注意 : 屬性須要先初始化後才能夠爲級聯屬性賦值, 不然會有異常 --> <property name="car.maxSpeed" value="220"></property> </bean> <bean id="person3" class="com.anqi.hello.collections.Person"> <property name="name" value="Angels"></