package com.test;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;
public class Client
{
public static void main(String[] args)
{
ClassPathResource cpr = new ClassPathResource("applicationContext.xml");
XmlBeanFactory factory = new XmlBeanFactory(cpr);
Person p = (Person)factory.getBean("chinese");
p.work();
}
}
ApplicationContext.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-2.5.xsd">
<bean id="toolA" class="com.test.ConcreteToolA"></bean>
<bean id="toolB" class="com.test.ConcreteToolB"></bean>
<bean id="chinese" class="com.test.Chinese">
<property name="tool" ref="toolB"></property>
</bean>
</beans>
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
package com.test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
public class BeanTest
{
public static void main(String[] args) throws Exception
{
ApplicationContext ctx = new FileSystemXmlApplicationContext(
"src//applicationContext.xml");
Person p = (Person) ctx.getBean("chinese");
p.useAxe();
}
}
ApplicationContext继承beanfactory,基于文件的加载
applicationContext.xml在src下,src//applicationContext.xml。如果applicationContext.xml在根目录下,则直接是applicationContext.xml