1,在beans.xml中:定义bean:ZhangSan LiSi JavaWork ,特别的是需要在定义JavaWork中定义属性名称"tester",这个属性名称与JavaWork中的成员变量名一直。ref代表属性tester的具体事例的id,如“zhangsan”(与ZhangSan的id一致),这句话的含义就是相当于执行了JavaWork中的Set方法。
<?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.xsd">
<bean id="zhangsan" class="com.cruise.service.ZhangSan"></bean>
<bean id="lisi" class="com.cruise.service.LiSi"></bean>
<bean id="javawork" class="com.cruise.service.JavaWork">
<property name="tester" ref="zhangsan"></property>
</bean>
</beans>
2,在com.cruise.test中,增加Test2类,写main()测试方法,加载beans.xml文件,main()方法中,"javawork"与beans.xml 中的id一直,即表示new JavaWork()。,
package com.cruise.test;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.cruise.service.JavaWork;
public class Test2 {
public static void main(String[] args) {
ClassPathXmlApplicationContext CA = newClassPathXmlApplicationContext("beans.xml");
JavaWork javaWork = (JavaWork)CA.getBean("javawork");
javaWork.doTest();
}
}
ps:如果想要LiSi类来执行,只需要修改beans.xml配置文件即可。
<?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.xsd">
<bean id="zhangsan" class="com.cruise.service.ZhangSan"></bean>
<bean id="lisi" class="com.cruise.service.LiSi"></bean>
<bean id="javawork" class="com.cruise.service.JavaWork">
<property name="tester" ref="lisi"></property>
</bean>
</beans>
第二讲:2.2 spring 如何来管理IOC容器
最新推荐文章于 2024-08-07 00:24:03 发布