该文章主要为完成实训任务,详细实现过程及结果见【http://t.csdn.cn/D3QjZ】
利用注释配置类取代Spring配置文件
1. 创建新包
- 在
cn.kox.spring
包创建day03
子包
2. 拷贝类与接口
- 将
day02
子包的类与接口拷贝到day03
子包
3. 创建注解配置类
- 在
day03
子包里创建SpringConfig
类,取代Spring配置文件
package cn.kox.spring.day03;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@Configuration // 表明是Spring配置类
@ComponentScan("cn.kox.spring.day03")
public class SpringConfig {
}
4. 创建测试类
- 在test/java里创建
cn.kox.spring.day03
包,在包里创建TestKnight
类
package cn.kox.spring.day03;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class TestKnight {
private AnnotationConfigApplicationContext context; // 基于注解配置类的应用容器
@Before
public void init() {
// 基于注解配置类创建应用容器
context = new AnnotationConfigApplicationContext(SpringConfig.class);
}
@Test
public void testKnight() {
// 根据名称从应用容器里获取勇敢骑士对象
Knight knight1 = (Knight) context.getBean("RobinHood");
// 勇敢骑士执行任务
knight1.embarkOnQuest();
// 根据名称从应用容器里获取救美骑士对象
Knight knight2 = (Knight) context.getBean("rescueDamselKnight");
// 救美骑士执行任务
knight2.embarkOnQuest();
}
@After
public void destroy() {
// 关闭应用容器
context.close();
}
}