Bean.xml文件
大致的Bean属性:
内部bean
级联属性
特殊字符以及赋空值
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="helloWorld" class="com.firstSpring.HelloWorldImpl"></bean>
<bean name="student" class="com.shuxing.bean.Student"></bean>
<bean name="studentDao" class="com.shuxing.bean.StudentDaoImpl"></bean>
<bean name="studentService" class="com.shuxing.bean.StudentServiceImpl">
<!-- 1、Setter属性注入 -->
<!-- <property name="属性名称" ref="bean引用名称"></property> -->
<!--
构造器注入可以指定参数的位置和参数的类型type属性
property中的ref属性建立bean之间的引用关系
-->
<!--
<property name="studentDao" ref="studentDao"></property>
<property name="student" ref="student"></property>
-->
<!-- 2、构造方法注入 -->
<!-- <constructor-arg ref="bean引用名称" index="属性索引"></constructor-arg> -->
<constructor-arg ref="studentDao" index="0"></constructor-arg>
<constructor-arg ref="student" index="1"></constructor-arg>
</bean>
<bean id="person" class="com.second.bean.Person">
</bean>
<bean id="car" class="com.second.bean.Car">
<constructor-arg value="Ford"></constructor-arg>
<constructor-arg value="changagn"></constructor-arg>
<constructor-arg value="20000"></constructor-arg>
</bean>
<bean id="person2" class="com.second.bean.Person">
<!--
属性如有特殊字符可以使用<![CDATA[]]>包裹起来
属性值也可以使用value直接进行配置
-->
<constructor-arg type="java.lang.String">
<value><![CDATA[女一号]]></value>
</constructor-arg>
<constructor-arg value="lisi" type="java.lang.String"></constructor-arg>
<constructor-arg type="java.lang.String">
<value>21</value>
</constructor-arg>
<constructor-arg ref="car"></constructor-arg>
<!-- 为级联属性赋值 属性需要先初始化再为级联属性赋值 -->
<property name="car.maxSpeed" value="180"></property>
</bean>
</beans>
构造方法注入时一定要有无参构造器
赋值时一定要有setXxx方法
2.PersonTest.java
package com.second.bean;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class PersonTest {
public static void main(String[] args) {
ApplicationContext ctx=new
ClassPathXmlApplicationContext("springXML/beans.xml");
/*
<!- 属性注入-->
Person person=(Person)ctx.getBean(Person.class);
person.setName("zahngsan");
person.setAge("21");
person.setSex("男");
System.out.println(person.toString());
person.output();
*/
<!-在Bean文件中配置->
Person person2=(Person)ctx.getBean("person2");
System.out.println(person2.toString());
}
}