利用组件注解符精简Spring配置文件

利用组件注解符精简Spring配置文件

  1. 业务Bean的配置可用注解符:@Component - 组件 (@Service - 服务、@Repository - 仓库、@Mapper - 映射器、@Controller - 控制器)

1.修改杀龙任务

在这里插入图片描述
添加组件注解符,交给Spring容器管理,没有设置参数,那么组件采用默认名称

2.修改勇敢骑士类

在这里插入图片描述

  1. 注意:删除setSlayDragonQuest()方法,因为已经通过自动装配注解设置了勇敢骑士的杀龙任务属性。
  2. 查看@Component注解源码

3.修改救美骑士类

在这里插入图片描述

4.配置Spring配置文件

在这里插入图片描述

  1. 组件扫描:扫描指定包下添加了注解符的类(@Component、@Service、@Repository、@Mapper、@Controller),将其生成Bean对象

创建测试类

在这里插入图片描述

程序优化-----面向接口

  1. Spring框架可以方便地管理Bean及其相互依赖。为了模块之间实现松耦合,一般采用面向接口的方式。多种骑士,多种任务,可以任意搭配。为了实现这个效果,我们应该抽象出两个接口:骑士接口(Knight)和任务接口(Quest)。骑士接口有两个实现类:BraveKnight和DamselRescuingKnight;任务接口有两个实现类:SlayDragonQuest和RescueDamselQuest。

1.创建接口

1.1 创建Quest接口

在这里插入图片描述

1.2 创建Knight接口

在这里插入图片描述

2. 修改任务类

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 注意:SlayDragonQuest类改成了Quest接口,这样就可以给该骑士自动装配任何任务(实现了Quest接口的Bean),增加了程序的灵活性。

在这里插入图片描述

3.创建测试类

在这里插入图片描述

课堂练习

1.任务1、两种骑士交换执行任务。

  1. 勇敢骑士添加救美任务
    在这里插入图片描述
  2. 救美骑士添加杀龙任务
    在这里插入图片描述
  3. 测试代码
    在这里插入图片描述

任务2、两种骑士都执行两项任务。

在这里插入图片描述

任务3、两种骑士再交换执行任务。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值