讲解Spring、讲解 Eclipse for Java程序、辅导Web Project
- 首页 >> Java编程实验一Spring (IoC & DI)
一、实验目的
1.熟悉 Eclipse for Java EE开发环境
2.理解Spring框架的控制反转和依赖注入原理
二、实验步骤
1.创建项目
在Eclipse中创建一个Dynamic Web Project
2.添加Spring相关JAR包
将相关jar包复制到lib文件夹下
3.编写接口部分的代码
在项目中创建cn.edu.sdju.soft.dao包
编写一个Machine接口,并设计接口中的方法calculate()。
4.编写接口的实现类
在项目中创建cn.edu.sdju.soft.dao.impl包
至少编写这个接口的两个实现类,这些实现类要有不同的输出信息。
5.控制反转功能的实现
在项目中创建cn.edu.sdju.soft.test包
编写一个测试类,用来实现控制反转功能。
实现类代码要点:
a)在静态上下文中访问applicationContext.xml文件
b)创建ApplicationContext的对象,并调用ApplicationContext的getBean()方法获取Spring创建的实例。
c)代码编写步骤
i.获取ApplicationContext 对象,调用ClassPathXmlApplicationContext类或FileSystemXmlApplicationContext的构造方法即可。Spring配置文件的名字(applicationContext.xml)字符串作为构造方法的参数。
ii.调用ApplicationContext的getBean()方法,实例化实现类。
getBean()方法的两种调用方法
Object getBean(String id);
Object getBean(Clazz c);
其中id为需要实例化的类在Spring配置文件中的id, c为需要实例化的类在Spring配置文件中的类型信息,即“类名.class”。
例如:
TestDemo tDemo = (TestDemo)ac.getBean(“aaa”);
或
TestDemo tDemo = (TestDemo)ac.getBean(TestDemo.class);
iii.获取对象并调用实现类的相关方法。
6.编写Spring的配置文件
将两个实现类在Spring的配置文件中注册。Spring配置文件的内容:
<?xmlversion="1.0"encoding="UTF-8"?>
<beansxmlns="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.3.xsd">
<beanid="自定义部分"class="对应类的全限定名"></bean>
</beans>
7.编写一段代码,测试Spring配置的效果
运行test包中的测试类代码,看看在不显示实例化两个实现类的情况下,能否调用实现类的方法。
8.依赖注入功能的实现
a)在项目中创建cn.edu.sdju.soft.service包和cn.edu.sdju.soft.service.impl包。
b)在cn.edu.sdju.soft.service包中创建Service接口,并设计接口中的calculate()方法。
c)在cn.edu.sdju.soft.service.impl.包中创建Service接口的实现类,一个足够。这个实现类首先定义dao属性(Machine接口定义在dao包,称其为dao属性),即
private Machine mac;
d)设计对属性的setter()方法。之后实现service接口中的calculate()方法。这个calculate()方法可以调用dao接口中的calculate方法。
e)在Spring配置文件中对刚刚编写的service实现类进行注册。并注意修改<bean>的子标记设置。
<beanid="自定义内容"class="对应类的全限定名">
<property name="类的属性的名字"ref="该属性在本文件中的id值"/>
</bean>
f)改写测试类代码,在不显示实例化service实现类的情况下,看看能否成功调用service的calculate()方法。