spring的基本操作-反照
spring的基本操作-反射
前言:
Spring通过反射来实现获取对象
准备:
1. 建Spring1工程。
2. 导入Spring包
具体实现:
1. Person.java
2. Chinese.java
3. American.java
4. applicationContext.xml
5. Client.java
前言:
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("张三")); } }