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

如何做购物网站自媒体培训

如何做购物网站,自媒体培训,天津网站建设咨询,温州快建网站建设一、什么是责任链模式: 责任链模式属于行为型模式,是为请求创建了一个接收者对象的链,将链中每一个节点看作是一个对象,每个节点处理的请求均不同,且内部自动维护一个下一节点对象。 当一个请求从链式的首端发出时&a…

一、什么是责任链模式:

责任链模式属于行为型模式,是为请求创建了一个接收者对象的链,将链中每一个节点看作是一个对象,每个节点处理的请求均不同,且内部自动维护一个下一节点对象。

当一个请求从链式的首端发出时,会沿着链的路径依次传递给每一个节点对象,直至有对象处理这个请求为止

二:责任链模式的特性

意图:

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

主要解决:

职责链上的处理者负责处理请求,客户只需要将请求发送到职责链上即可,无须关心请求的处理细节和请求的传递,所以职责链将请求的发送者和请求的处理者解耦了

优点:

1.降低耦合度,将请求的发送者和接收者解耦
2.增加系统的灵活性,通过改变链内的成员或者调动他们的次序,允许动态地新增或者删除处理者
3.简化了对象。使得对象不需要知道链的结构。
4.增加新的请求处理类很方便。

缺点:

1.责任链太长或者处理时间过长,会影响整体性能。
2.如果节点对象存在循环引用时,会造成死循环,导致系统崩溃。

三、责任链处理流程和应用

处理流程图:
在这里插入图片描述
结构图:
在这里插入图片描述

1.Handler:抽象处理者,定义了一个处理请求的方法。所有的处理者都必须实现该抽象类。
2.ConcreteHandler:具体处理者,处理它所负责的请求,同时也可以访问它的后继者,如果它能够处理该请求则处理,否则将请求传递到它的后继者。
3.Client: 客户类

客户端发出请求,调用抽象类Handler中的方法处理逻辑业务。
对象ConcreteHandler1与ConcreteHandler2继承Handler,其中ConcreteHandler1中持有下一个节点ConcreteHandler2的引用;
事件由1对象发出,如果其处理不了,则交由2对象处理!

下面使用代码的方式展现:

Handler.class

/*** 抽象类*/
public abstract class Handler {/*** 下一代处理者*/public Handler nextProcessor;/*** 每一个实现类处理* * @param msg*/public abstract void handleRequest(String msg);}

Processor1.class

/*** 处理者1*/
public class Processor1 extends Handler {@Overridepublic void handleRequest(String msg) {if(msg.equals("Processor1")) {System.out.println("第一个处理者处理");} else {nextProcessor.handleRequest(msg);}}
}

Processor2.class

/*** 处理者2*/
public class Processor2 extends Handler {@Overridepublic void handleRequest(String msg) {if(msg.equals("Processor2")) {System.out.println("第二个处理者处理");} else {nextProcessor.handleRequest(msg);}}
}

测试方法:

@Test
public void testProcessor() {Processor1 processor1 = new Processor1();Processor2 processor2 = new Processor2();processor1.nextProcessor = processor2;processor2.nextProcessor = processor1;processor1.handleRequest("Processor2");}
运行结果:
第二个处理者处理
Process finished with exit code 0

示例场景:

服务器后端在对前端发送过来的请求进行处理的时候,一般的一个简单的过滤认证行为为: Request—>请求频率验证—>登录认证—>访问权限—>敏感词过滤—>… 我们可以直接在程序代码中进行顺序流程代码编写,但这样的代码耦合不易于扩展维护和复用,我们可以使用责任链的形式来实现, 责任链模式主要可以采用链表的形式进行实现

1.定义一个请求包装类
2.进行责任链抽象,通过链表形式来实现
3.定义责任链的业务主体子类,可以有多个
4.对于一个请求,先进行访问频率验证,再进行登录验证,如果有一个验证不通过,则返回异常。链式执行,依次调用…

总结
责任链模式通常使用于如处理的是单个请求需要有多个请求处理者来处理不同的事情,将多个处理者链接起来。处理者可通过继承一个抽象类来实现其中的处理方法,并且若是其中情况成立可执行下一个请求处理者,形成一个执行链。

http://www.hkea.cn/news/232648/

相关文章:

  • 做csgo直播网站上海知名网站制作公司
  • 深圳住建局官方网站seo网站关键词优化快速官网
  • 网站建设需要php吗企业的互联网推广
  • 苏中建设集团官方网站电商软文广告经典案例
  • 网站开发需要什么开发工具代做百度首页排名价格
  • 北京网站设计多少钱微信引流推广
  • 网站建设实施背景分析百度指数里的资讯指数是什么
  • 小程序定制开发深圳公司网站的优化seo
  • 构建一个网站域名查询平台
  • 蚌埠网站关键词优化推广下载
  • 看房地产的app在哪看aso安卓优化
  • 网站与域名的区别扬州整站seo
  • 哪些网站可以进行域名注册公司关键词seo
  • 如何申请一个网站 做视频百度小说搜索热度排行榜
  • 天津做网站选择津坤科技b重庆seo教程搜索引擎优化
  • 什么网站做热能表好百度一下电脑版首页网址
  • 点击图片直接进入网站怎么做如何使用免费b站推广网站
  • 手机网站建设软件怎么在百度上做广告推广
  • 南京做网站团队手机app免费制作平台
  • 17173游戏网搜索优化指的是什么
  • 公司做网站需要给百度交钱吗百度竞价推广方案
  • 网站建设的关键seo推广小分享
  • 写小说的小网站百度关键词排名优化
  • 制作网站的成本规划公司如何建立网站
  • html语言做网站石嘴山网站seo
  • 做最好的言情网站官网seo优化
  • 云南建设监理协会网站营销失败案例分析
  • 怎么样做淘宝优惠券网站搜索引擎营销的优缺点
  • wordpress动态订单seo社区
  • 网站域没到期不能续费吗google谷歌搜索