Java web 实战之Spring(二)
二、第一个Spring实例
在编写第一个Spring实例之前,需要了解几个基本概念:
(1)bean:Spring中bean不同于Java Bean,在Spring中,所有的Java类都成为bean,且不需要定义完整的set和get方法。
(2)配置文件bean.xml:bean需要在Spring的配置文件中声明后才可以被Spring所管理
1、新建项目
新建一个javaweb项目,项目名为SpringTest,如下
选中项目,Build Path,添加之前添加的用户库。如下
2、创建实例
这里我们创建一个龟兔赛跑的实例。
(1)首先创建一个兔子的接口
package wf.demo4;
public interface Rabbit {
public void run();
}
(2)创建一个兔子实现类
public class RabbitImpl implements Rabbit {
@Override
public void run() {
// TODO Auto-generated method stub
System.out.println("兔子跑到终点了");
}
}
(3)创建一个乌龟的接口
package wf.demo4;
public interface Tortoise {
public void run();
}
(4)创建一个乌龟的实现类
public class TortoiseImpl implements Tortoise {
private Rabbit rabbit;
@Override
public void run() {
// TODO Auto-generated method stub
System.out.println("乌龟已经跑了一半了");
rabbit.run();
}
public void setRabbit(Rabbit rabbit){
this.rabbit =rabbit;
}
}
(5)Test.java
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
TortoiseImpl tortoiseImpl = context.getBean("tortoise",TortoiseImpl.class);
tortoiseImpl.run();
}
}
通过Spring上下文ApplicationContext来获取在Spring容器中的实体类TortoiseImpl。
(6)配置文件bean.xml
</bean>
<bean id="rabbit" class="wf.demo4.RabbitImpl">
</bean>
<bean id="tortoise" class="wf.demo4.TortoiseImpl">
<property name="rabbit" ref="rabbit"/>
</bean>
在bean.xml配置文件中,对兔子和乌龟的实现了进行配置,其中id由用户自己定义,而class则是包名.实现类,用于通过反射机制找到实现类。而property标签则是用于配置乌龟类中的setter方法,其中name为setxxx中xxx的名字,而ref则是set方法的参数值。
3、运行结果
今天就到这里,下一章开始介绍Spring的IOC机制