spring的基本操作-反照

spring的基本操作-反射
前言:
Spring通过反射来实现获取对象
准备:
1. 建Spring1工程。
2. 导入Spring包
具体实现:
1. Person.java
package com.simplefactory;

public interface Person {
	public String sayHello(String name);
	public String sayGoodBye(String name);
}

2. Chinese.java
package com.simplefactory;

public class Chinese implements Person{

	@Override
	public String sayGoodBye(String name) {
		return "good by:"+name;
	}

	@Override
	public String sayHello(String name) {
		return "hello:"+name;
	}

}

3. American.java
package com.simplefactory;

public class American implements Person {

	@Override
	public String sayGoodBye(String name) {
		return "good by:"+name;
	}

	@Override
	public String sayHello(String name) {
		return "hello:"+name;
	}

}

4. 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"
	xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

	<bean id="chinese" class="com.test.Chinese"></bean>
	<bean id="american" class="com.test.American"></bean>

</beans>

5. Client.java
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 person=(Person)factory.getBean("chinese");
		
		System.out.println(person.sayHello("张三"));
		System.out.println(person.sayGoodBye("张三"));
	}
}