美文网首页
不一样的策略模式

不一样的策略模式

作者: 我还是老油条 | 来源:发表于2020-10-29 14:19 被阅读0次

业务需求:

根据不同课程执行不同的逻辑,将来课程类型还会不断增加

理论上,应该在数据库建立type字段,根据不同的type

执行不同的逻辑,但是会有if -else,将来添加课程,需要

修改if-else内容,违反开闭原则,所以考虑使用策略模式进行扩展

直接上代码:

先定义一个课程handler接口

ai课具体实现

艺术课具体实现

课程实体,别的字段自己添加,我这里只需要type

添加一个注解,来区分类型

类型枚举

这块比较重要:

在spring启动的时候,将类型和对应的类都添加到map中

最后提供一个根据类型获取类的方法

实际调用:

返回结果

大功告成!!!!

相关文章

  • Android设计模式(七)-状态模式

    状态模式看起来和策略模式很像,但是是两个不一样的设计模式。状态模式是一个类根据内部的状态动态的选择行为。策略模式一...

  • 策略模式与状态模式的比较

    状态模式和策略模式的比较 两个模式的实现类图虽然一致,但是实现目的不一样! 首先知道,策略模式是一个接口的应用案例...

  • 11.7设计模式-策略模式-详解

    设计模式-策略模式 策略模式详解 策略模式在android中的实际运用 1.策略模式详解 2.策略模式在andro...

  • 策略模式

    通俗的去描述策略:同样的结果,不一样的显示策略。 如果没有策略模式可能我们要用if-else写很多无奈的代码 UM...

  • 深入浅出设计模式(一)-策略模式

    本文解决问题 什么是策略模式? 策略模式的优缺点以及策略模式解决了什么痛点 策略模式的适用环境 什么是策略模式? ...

  • 第5章 -行为型模式-策略模式

    一、策略模式的简介 二、策略模式的优缺点 三、策略模式的应用场景 四、策略模式的实例

  • 策略、工厂模式融合 InitializingBean

    策略、工厂模式融合 InitializingBean 策略、工厂模式分别是什么 策略模式 策略模式是将不同的算法封...

  • 策略模式优化 if else

    策略模式 什么是策略模式? 策略模式的定义与特点 策略(Strategy)模式的定义:该模式定义了一系列算法,并将...

  • 设计模式[13]-策略模式-Strategy Pattern

    1.策略模式简介 策略模式(Strategy Patter)是行为型(Behavioral)设计模式,策略模式封装...

  • 随遇而安——状态模式

    状态模式介绍 状态模式和策略模式结构几乎一样,但它们的目的、本质却完全不一样。 状态模式的行为是平行的、不可替...

网友评论

      本文标题:不一样的策略模式

      本文链接:https://www.haomeiwen.com/subject/nxbkvktx.html