您现在的位置是:首页 > Javascript
当前栏目
策略模式介绍以及具体使用场景
2023-02-19 12:24:12 时间
前言
在实际开发过程中经常会出现行为不同的实现,比如支付,那可能是微信支付,阿里支付,银联等支付的具体实现。要你用一个设计模式来实现
定义
策略模式定义了一系列算法,并将每个算法封装起来,使他们可以相互替换,且算法的变化不会影响到使用算法的客户
UML类图
具体实现
InitializingBean接口说明
1、InitializingBean接口为bean提供了初始化方法的方式,它只包括afterPropertiesSet方法,凡是继承该接口的类,在初始化bean的时候都会执行该方法。
2、spring初始化bean的时候,如果bean实现了InitializingBean接口,会自动调用afterPropertiesSet方法。
3、在Spring初始化bean的时候,如果该bean实现了InitializingBean接口,并且同时在配置文件中指定了init-method,系统则是先调用afterPropertieSet()方法,然后再调用init-method中指定的方法。
策略工厂
支付枚举
具体业务类
1、支付入口
2、支付入口具体实现
微信支付逻辑
阿里支付具体逻辑
3、定义一个控制器测试
测试结果
测试微信支付:http://localhost:10001/pay/wx
测试阿里支付:http://localhost:10001/pay/zfb
相关文章
- guzzle 使用 json 作为主体请求接口
- 前端(JS)与后端(PHP) 通过 RSA 实现加解密
- js 实现版本号排序
- ‘DatePicker.RangePicker‘ cannot be used as a JSX component.
- 使用Helm部署Wikijs
- 我为什么选择Wiki.js记笔记?
- 如何通过 kubectl 进入 node shell
- JavaScript之无题之让人烦躁的模块化
- Javascript之异步循环打印这道小题
- Javascript之我也来手写一下Promise
- 《JavaScript 模式》读书笔记(8)— DOM和浏览器模式2
- 《JavaScript 模式》读书笔记(8)— DOM和浏览器模式1
- 《JavaScript 模式》读书笔记(7)— 设计模式3
- 《JavaScript 模式》读书笔记(7)— 设计模式2
- 《JavaScript 模式》读书笔记(7)— 设计模式1
- Javascript之其实我觉得原型链没有难的那么夸张!
- 《JavaScript 模式》读书笔记(6)— 代码复用模式3
- 《JavaScript 模式》读书笔记(6)— 代码复用模式2
- 《JavaScript 模式》读书笔记(6)— 代码复用模式1
- 《JavaScript 模式》读书笔记(5)— 对象创建模式4