zoukankan      html  css  js  c++  java
  • 工厂模式+策略模式 使用

    一. 先明白什么是工厂模式

         

        工厂模式是创建型的设计模式,它接受指令,创建出符合要求的实例;它主要解决的是资源的统一分发,将对象的创建完全独立出来,让对象的创建和具体的使用客户无关。主要应用在多数据库选择,类库文件加载等。

    二.什么是策略模式

     策略模式是为了解决的是策略的切换与扩展,更简洁的说是定义策略族,分别封装起来,让他们之间可以相互替换,策略模式让策略的变化独立于使用策略的客户。

    三.代码实现

    1. 定义一个策略接口,提供两个方法

    2. 定义实现类,注意实现类上必须加上spring的注解,相当于把这个类交给spring容器管理

    3. 重写的两个方法

    4. 编写获取实体的工厂类,注入的list里面相当于就是所有实现策略接口的实现类,因为交给了spring管理,所以所有子类都在,并且通过多态指定对应的子类

    5.调用测试,通过传参,找到指定的实体,执行指定的策略,测试成功

    6. 当然我们也可以用另外一种方法,通过注入map 通过key去获取对应的实现类,在实体类上的spring注解加上给他一个名称,相当于就是注入map里面的key value 就是对应的实体,如果不加名称, 注入map的话,他的key就是类名

    7. 通过注入map 去执行对应的策略,测试成功,两种方式都可以,性质差不多,第二种相当于用map 代替了 自己定义的工厂

      

  • 相关阅读:
    辅助方法、模型、视图数据
    HTML.Label
    HTML辅助方法
    ViewBag与ViewData
    ASP.NET MVC4 View 指定视图
    ASP.NET MVC4 配置逻辑
    大部分基于MVC的Web框架所使用的一些基本原则
    MVC内置的验证属性
    高德地图多点标记自定义地图
    关于数组的去重
  • 原文地址:https://www.cnblogs.com/bt2882/p/14953491.html
Copyright © 2011-2022 走看看