在spring框架下使用抽象类

在处理几个相似业务时,我们往往采用策略模式去构建我们的代码。每个业务定义一个处理类,还会有一些通用的处理,我们可以把他们放到抽象类中。

在Spring框架下,抽象类(abstract)也可以注入Bean。我们的业务类继承这个抽象类,在需要用到这些通用的处理时,调用下即可。

下面举一个例子,用不同武器攻击敌人,并把攻击结果保存到数据库。

接口:

java 复制代码
public interface Attack {

    boolean  attackEnemy(Info  info);
}

抽象类:

typescript 复制代码
@Slf4j
public abstract class AbstractAttack implements Attack{


    @Resource
    private SaveResultService saveResultService;

    /**
     * 通用处理,保存攻击结果
     * @param result
     * @return
     */
    public boolean saveResult(Result result) {

  
         return saveResultService.save(result);
    }
    

}

用手榴弹攻击

scala 复制代码
@Service
public class FragAttack extends AbstractAttack{
    
    
    @Override
    public boolean attackEnemy(Info info) {
        
        //1.启动攻击任务
        
        //2.保存攻击结果
        super.saveResult(result);
        return false;
    }
}

OK,演示到此结束,你学费了吗

相关推荐
luoluoal6 分钟前
基于Spring Boot的装饰工程管理系统源码(springboot)
java·spring boot·后端
2401_857617627 分钟前
Spring Boot框架在中小企业设备管理中的创新应用
数据库·spring boot·后端
Jonas2429 分钟前
Spring里边的设计模式
后端
涛涛6号32 分钟前
PageHelper(springboot,mybatis)
java·spring boot·后端
豪宇刘1 小时前
Shiro回话管理和加密
java·后端·spring
天人合一peng2 小时前
20201010 MTAP-3DGAM审稿意见
后端·3d·restful
计算机学姐3 小时前
基于SpringBoot的汽车票网上预订系统
java·vue.js·spring boot·后端·mysql·java-ee·mybatis
哎呦没3 小时前
农村扶贫管理:SpringBoot解决方案
java·spring boot·后端
掘金一周5 小时前
不是吧,刚毕业几个月的前端,就写这么复杂的表格??| 掘金一周 10.31
人工智能·后端
尘浮生5 小时前
Java项目实战II基于Spring Boot的火锅店管理系统设计与实现(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·后端·微信小程序·旅游