1.新建一个动态web项目,file/new/dynamic web project
2.导入jar包
导入spring所需的常用jar包
可以建一个专门为spring的library,将常用的spring jar包放到里面,方便导入
3.具体的目录结构
(1)首先定义一个接口,HelloWorld.java,这是为bean实体准备的接口
package exForSpring;
public interface HelloWorld {
public void sayhello() ;
}
(2)编写HelloWorld的实现类,HelloSpring
package exForSpring;
public class HelloSpring implements HelloWorld {
@Override
public void sayhello() {
// TODO Auto-generated method stub
System.out.println("hello Spring\n");
}
}
(3)编写HelloWorldService,它就是被注入依赖的类,注入的就是HelloSpring
package exForSpring;
public class HelloWorldService {
private HelloWorld helloWorld;
public HelloWorld getHelloWorld() {
return helloWorld;
}
public void setHelloWorld(HelloWorld helloWorld) {
this.helloWorld = helloWorld;
}
// public HelloWorldService(HelloWorld helloWorld) {
// super();
// this.helloWorld = helloWorld;
// }
// public HelloWorldService() {
// super();
// // TODO Auto-generated constructor stub
// }
}
它有一个成员变量,HelloWorld,当创建它时会利用Spring的IOC功能自动注入这个成员变量。
(4)编写bean配置文件,bean.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-4.2.xsd">
<bean id="helloworldspring" class="exForSpring.HelloSpring"></bean>
<bean id="helloworldservice" class="exForSpring.HelloWorldService">
<property name="helloWorld" ref="helloworldspring"></property>
</bean>
</beans>
里面配置了两个bean,HelloSpring和HelloWorldService。并为HelloWorldService通过property标签注入依赖。
(5)编写HelloProgram.java,这个类会从ApplicationContext中获取HelloWorldService的实例
package exForSpring;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class HelloProgram {
public static void main(String[] args) {
ApplicationContext context =
new ClassPathXmlApplicationContext("beans.xml");
HelloWorldService service =
(HelloWorldService) context.getBean("helloworldservice");
HelloWorld hw= service.getHelloWorld();
hw.sayhello();
}
}
4.运行结果
项目的war包下载地址https://download.youkuaiyun.com/download/qq_29924227/10349152