先引入Spring框架jar包,和common-logging.jar
接口IHelloMessage
public interface IHelloMessage {
public String sayHello();
}
public class HelloChina implements IHelloMessage {
@Override
public String sayHello() {
// TODO Auto-generated method stub
return "大家好!";
}
}
类Person
public class Person {
private IHelloMessage helloMessage;
public IHelloMessage getHelloMessage() {
return helloMessage;
}
public void setHelloMessage(IHelloMessage helloMessage) {
this.helloMessage = helloMessage;
}
public String personSayHello(){
return this.helloMessage.sayHello();
}
}
主类Main
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Main {
public static void main(String[] args) {
//老方法
//Resource r = new FileSystemResource("helloMessage.xml");
//BeanFactory f = new XmlBeanFactory(r);
//替代老方法
ApplicationContext ctx = new ClassPathXmlApplicationContext("com/bupt/spring/chapter01/helloMessage.xml");
try {
Person person = (Person) ctx.getBean("person");
String s = person.personSayHello();
System.out.println(s);
} catch (Exception e) {
e.printStackTrace();
} finally {
((ClassPathXmlApplicationContext)ctx).close();
}
}
}
xml文件helloMessage.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id = "helloWorld" class = "com.bupt.spring.chapter01.HelloWorld"></bean>
<bean id = "helloChina" class = "com.bupt.spring.chapter01.HelloChina"></bean>
<bean id = "person" class = "com.bupt.spring.chapter01.Person">
<property name="helloMessage" ref = "helloChina"></property>
</bean>
</beans>