1. 程式人生 > >Java Spring 入門Demo

Java Spring 入門Demo

先引入Spring框架jar包,和common-logging.jar

介面IHelloMessage

public interface IHelloMessage {
	public String sayHello();
}
類HelloChina
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>