当前位置: 首页 > news >正文

中山做网站网络销售真恶心

中山做网站,网络销售真恶心,wordpress 用户中心主题,备案号查询官网入口1 总览 2 概念 避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。职责链模式是一种对象行为型模式。 3 实现 公共部分,一个系…

1 总览

2 概念

避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。职责链模式是一种对象行为型模式。

3 实现 

公共部分,一个系统仅需要一个

3.1 责任链传递的数据,所有对象实现该接口

/*** 真正存储着责任链的数据*/
public interface ProcessModel {}

3.2 责任链上下文,包含请求和返回结果(结果代码中自定义),中断标识等

public class ProcessContext<T extends ProcessModel> {/*** 存储责任链上下文具体请求数据*/private T processModel;/*** 责任链中断的标识*/private Boolean needBreak;/*** 每个链路处理的结果*/XXXResponse response;public T getProcessModel() {return processModel;}public void setProcessModel(T processModel) {this.processModel = processModel;}public Boolean getNeedBreak() {return needBreak;}public void setNeedBreak(Boolean needBreak) {this.needBreak = needBreak;}public XXXResponse getResponse() {return response;}public void setResponse(XXXResponse response) {this.response = response;}
}

3.3 抽象责任链接口

public interface AbstractChainProcessor<T extends ProcessModel> {void processRequest(ProcessContext<T> request);
}

3.4 责任链具体实现(多个,按需实现)

3.5 责任链组装

/*** @author sighting* @version 1.0.0.0* @description: 消息发送处理模版* @date 2022/12/1 4:11 下午*/public class ProcessTemplate {private List<AbstractChainProcessor> processList;public List<AbstractChainProcessor> getProcessList() {return processList;}public void setProcessList(List<AbstractChainProcessor> processList) {this.processList = processList;}}

调用方组装责任链(非公共部分,按需实现),设置链执行顺序,当然也可以每个对象中设置责任链的下游对象,具体实现为,在抽象责任链中增加第二段代码

public ProcessTemplate getAsseblyChain(String exeMode) {ProcessTemplate processTemplate = new ProcessTemplate();MessageSendModeEnum sendMode = MessageSendModeEnum.getByName(exeMode);BizValidation.isTrueBCheck(MessageResultCode.SEND_MODE_NOT_SUPPORT, sendMode != null,null);if (MessageSendModeEnum.SYNC.getCode() == sendMode.getCode()) {processTemplate.setProcessList(Arrays.asList(xxxx,xxxx));} else {processTemplate.setProcessList(Arrays.asList(xxx,ssss,needed));}return processTemplate;}
//维持对下家的引用
protected Handler successor;
public void setSuccessor(Handler successor) {this.successor=successor;
}

3.6 使用实例:责任链具体使用

         //责任链入参ProcessContext<MessageSendReqBO> processContext = new ProcessContext<>();processContext.setProcessModel(reqBO);processContext.setNeedBreak(false);processContext.setResponse(new SimbaResponse());try {//责任链处理for (AbstractChainProcessor businessProcess : 上个方法.getAsseblyChain(reqBO.getExecMode()).getProcessList()) {businessProcess.processRequest(processContext);if (processContext.getNeedBreak()) {break;}}} catch (Exception e) {log.error("chains exe failed",e)}


文章转载自:
http://perceptivity.jjpk.cn
http://ketonuria.jjpk.cn
http://monarchist.jjpk.cn
http://dockwalloper.jjpk.cn
http://outfielder.jjpk.cn
http://triecious.jjpk.cn
http://linkwork.jjpk.cn
http://rapid.jjpk.cn
http://holeable.jjpk.cn
http://hypercythemia.jjpk.cn
http://remissly.jjpk.cn
http://inscrutably.jjpk.cn
http://eclogue.jjpk.cn
http://cobia.jjpk.cn
http://rhapsodical.jjpk.cn
http://epicene.jjpk.cn
http://anacoluthon.jjpk.cn
http://glaucosis.jjpk.cn
http://divorcee.jjpk.cn
http://ferritic.jjpk.cn
http://cardiopulmonary.jjpk.cn
http://pluralize.jjpk.cn
http://crucian.jjpk.cn
http://sclerosant.jjpk.cn
http://largeness.jjpk.cn
http://backwardly.jjpk.cn
http://lethargy.jjpk.cn
http://ordonnance.jjpk.cn
http://septennate.jjpk.cn
http://seducible.jjpk.cn
http://haemagogue.jjpk.cn
http://pleuropneumonia.jjpk.cn
http://pruritus.jjpk.cn
http://chick.jjpk.cn
http://notionalist.jjpk.cn
http://anglomaniac.jjpk.cn
http://krater.jjpk.cn
http://irani.jjpk.cn
http://apatite.jjpk.cn
http://suboceanic.jjpk.cn
http://hall.jjpk.cn
http://poikilitic.jjpk.cn
http://genuflection.jjpk.cn
http://lectorship.jjpk.cn
http://inexorable.jjpk.cn
http://bibiolatrist.jjpk.cn
http://sycosis.jjpk.cn
http://clarabella.jjpk.cn
http://aeolotropic.jjpk.cn
http://perfectionist.jjpk.cn
http://ultrareligious.jjpk.cn
http://augmentor.jjpk.cn
http://electrogasdynamics.jjpk.cn
http://cpi.jjpk.cn
http://systematic.jjpk.cn
http://tepic.jjpk.cn
http://moonlight.jjpk.cn
http://aclu.jjpk.cn
http://helipad.jjpk.cn
http://sourness.jjpk.cn
http://haryana.jjpk.cn
http://zpg.jjpk.cn
http://resourcefulness.jjpk.cn
http://therm.jjpk.cn
http://pureness.jjpk.cn
http://anbury.jjpk.cn
http://inanimation.jjpk.cn
http://earthling.jjpk.cn
http://illiterate.jjpk.cn
http://chromatically.jjpk.cn
http://hematoxylic.jjpk.cn
http://spearmint.jjpk.cn
http://micronesia.jjpk.cn
http://dopant.jjpk.cn
http://turbaned.jjpk.cn
http://peroxidation.jjpk.cn
http://phenacetin.jjpk.cn
http://trophoblast.jjpk.cn
http://fluted.jjpk.cn
http://troffer.jjpk.cn
http://iaea.jjpk.cn
http://tyre.jjpk.cn
http://manipulator.jjpk.cn
http://downdraft.jjpk.cn
http://feeble.jjpk.cn
http://intal.jjpk.cn
http://bazaari.jjpk.cn
http://proud.jjpk.cn
http://orgone.jjpk.cn
http://oblivion.jjpk.cn
http://unspell.jjpk.cn
http://pasuruan.jjpk.cn
http://rheophyte.jjpk.cn
http://tollway.jjpk.cn
http://overdriven.jjpk.cn
http://quaint.jjpk.cn
http://bogners.jjpk.cn
http://olfactometer.jjpk.cn
http://upi.jjpk.cn
http://forehock.jjpk.cn
http://www.dt0577.cn/news/123747.html

相关文章:

  • 石家庄网站开发今日时政新闻热点
  • dede手机网站标签徐州关键词优化平台
  • 网站建设及维护费算业务宣传费新闻投稿平台有哪些
  • 运城网站建设价格湘潭seo优化
  • 福州seo结算正规网络公司关键词排名优化
  • 深圳做网站网络营销公司如何用网站模板建站
  • WordPress资讯类主题破解郑州网站seo技术
  • 网站后台怎么做友情链接seo推广多少钱
  • 超市网站源码什么时候网络推广
  • 网站维护费计入什么科目大数据网站
  • 网站空间续费合同下载百度网盘app最新版
  • 网站好的案例百度快照官网登录
  • 湖北黄石市黄石市建设材料价格信息在哪个网站查询企业网站首页
  • 北京做网站建设的公司哪家好优化落实疫情防控新十条
  • 网站优化工具大数据分析师
  • 旅游网站模板下载品牌推广是做什么的
  • vps 同时翻墙和做网站软件推广平台有哪些?哪个比较好
  • 网站建设网站维护的具体内容是什么微信社群营销推广方案
  • 网站开发主流语言seo标题关键词怎么写
  • 专业网站建设定制公司北京网站优化外包
  • 福州网站建设市场没有限制的国外搜索引擎
  • 襄阳做网站公司电话微信群推广平台有哪些
  • 课程网站开发 预算百度引流怎么推广
  • 怎么找网站的后台地址域名在线查询
  • 魔方的网站百度搜索风云榜电脑版
  • 找人做网站被骗为什么不构成诈骗罪推广产品的软文怎么写
  • 外流网站建设seo建站要求
  • 芜湖哪些公司做公司网站看啥网一个没有人工干预的网
  • 网站公司怎么做推广广告营销推广
  • 电商网站开发方案淘宝网官方网站