工厂策略模式

2024-05-14 21:12
文章标签 工厂 模式 策略

本文主要是介绍工厂策略模式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

工厂模式用于干掉大量的if-else
策略模式用于挪去臃肿的业务代码,还可以进一步升级加上模板模式,以及抽取成Starter

public interface HandlerStrategy extends InitializingBean {void findSyncOrders();
}
public class SalesPlatformFactory {private static final Map<String, HandlerStrategy> STRATEGY_MAP = new ConcurrentHashMap<>();public static HandlerStrategy getInvokeStrategy(String code) {return STRATEGY_MAP.get(code);}public static void register(SalesPlatFormEnum salesPlatFormEnum, HandlerStrategy handlerStrategy) {if (salesPlatFormEnum == null || handlerStrategy == null) {return;}STRATEGY_MAP.put(salesPlatFormEnum.getCode(), handlerStrategy);}
}
public class OttoHandler implements HandlerStrategy {@Overridepublic void findSyncOrders() {}@Overridepublic void afterPropertiesSet() throws Exception {SalesPlatformFactory.register(SalesPlatFormEnum.OTTO, this);}
}

这篇关于工厂策略模式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/989864

相关文章

AI预测福彩3D采取888=3策略+和值012路一缩定乾坤测试6月1日预测第8弹

今天继续基于888=3的大底,使用尽可能少的条件进行缩号。好了,直接上结果吧~           首先,888定位如下:         百位:6,5,4,7,8,9,1,0         十位:7,8,6,5,9,3,1,0         个位:5,7,6,4,2,9,1,0         一次缩水:         保留和值012:1、2路  ,是否杀对子:是。杀断组:

如何实现Java中的单例模式?举例说明。

Java中的单例模式(Singleton Pattern)是一种创建型设计模式,确保一个类只有一个实例,并提供全局访问点。实现单例模式有多种方法,下面介绍几种常见的实现方式。 饿汉式单例(Eager Initialization) 饿汉式单例在类加载时就创建实例,这种方式简单但在类加载时即创建实例,可能会带来资源浪费问题。 public class EagerSingleton {priva

揭秘小程序商城的团购奇迹:独特模式引领盈利新纪元

在数字经济的新纪元里,你是否对那些不张扬却充满潜力的商业模式心生好奇?今天,我要为你揭示一种别出心裁的商业模式,它以其独特的魅力,不仅迅速吸引了大量用户的目光,更在短短一个月内创造了超过600万的惊人盈利,让我们一同揭开其神秘面纱。 这个商业成功的背后,隐藏着一个充满智慧和创新的小程序商城。与传统商城不同,这个商城并不依赖于直接销售商品,而是巧妙地运用了团购策略。在这里,商品种类繁多,从

设计模式之工厂方法模式和开放-封闭原则

设计模式之工厂方法模式和开放-封闭原则            以下所有仅供记录和参考,如有问题,请留言提出,感谢!转载注明出处。            关于简单工厂模式参见之前写的设计模式之简单工厂模式。          在记录简单工厂模式的时候有提到这么一句话:简单工厂模式是工厂模式的特殊情况。其实话也不能这么说,研究了工厂方法模式之后,才发现,它是基于面向对象的“开放-封闭原则”而

基于python环境搭建Redis集群模式连接池

一、Redis集群 集群,就是通过添加服务器的数量,提供相同的服务,从而让服务器达到一个稳定、高效的状态。单台服务器存在不稳定性。当节点服务宕机了,就没有可用的服务了。此外,单台服务器能够处理服务是有限的,要搭建一个可以服务大规模请求且稳定的系统必定需要使用到集群。 当我们需要提供大规模数据的读写缓存时,就需要使用Redis集群。 Redis集群的搭建可以参考这边文章: redis集群搭建(非常详

Android 四种启动模式实践

standard–standard 连续启动两个standard模式的activity 这是默认的启动模式,每次启动都会创建新的实例,生命周期也是从头开始 singleTop–singleTop 连续启动两个singleTop模式的activity 当堆栈中已经存在实例的话 直接不再创建,通过onNewIntent 传递数据。生命周期会经历 onPause - onNewIntent

MVC前端定义变量的艺术:深入解析与实战策略

MVC前端定义变量的艺术:深入解析与实战策略 在MVC(Model-View-Controller)架构中,前端定义变量是一个至关重要的环节。它涉及到数据的存储、传递和展示,直接影响着应用程序的性能和用户体验。本文将从四个方面、五个方面、六个方面和七个方面,深入探讨MVC前端定义变量的最佳实践和技巧。 一、四个方面:前端变量的基本定义与使用 在MVC的前端开发中,变量通常用于存储临时数据或状

电商新篇章:消费增值模式重塑用户激励与平台价值

随着电商行业的浪潮汹涌而至,各大电商平台正积极探索新的用户激励机制,以增强用户粘性,确保在竞争激烈的市场中立于不败之地。其中,消费增值模式作为一种新兴策略,以其独特的积分返利和增值机制,为电商平台注入了新的活力。 一、消费增值模式的创新逻辑 消费增值模式的核心在于将消费者的每一笔消费转化为具有增值潜力的积分。这种机制不仅让消费者在购物的同时获得更多实惠,更通过积分的增值特性,激发了消费

【设计模式深度剖析】【7】【结构型】【享元模式】| 以高脚杯重复使用、GUI中的按钮为例说明,并对比Java类库设计加深理解

👈️上一篇:外观模式    |   下一篇:结构型设计模式对比👉️ 设计模式-专栏👈️ 目录 享元模式定义英文原话直译如何理解?字面理解例子:高脚杯的重复使用例子:GUI中的按钮传统方式使用享元模式 4个角色1. Flyweight (抽象享元类)2. ConcreteFlyweight (具体享元类)3. UnsharedFlyweight (非共享享元类)

USB主机模式——Android

理论 摘自:USB 主机和配件概览  |  Connectivity  |  Android Developers (google.cn) Android 通过 USB 配件和 USB 主机两种模式支持各种 USB 外围设备和 Android USB 配件(实现 Android 配件协议的硬件)。 在 USB 主机模式下,Android 设备充当主机。设备示例包括数码相机、键盘、鼠标和游戏控