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

关于网站建设的入门书郑州网络营销与网站推广

关于网站建设的入门书,郑州网络营销与网站推广,网上商城网站建设方案,付费问答 WordPress一、什么是责任链模式: 责任链模式属于行为型模式,是为请求创建了一个接收者对象的链,将链中每一个节点看作是一个对象,每个节点处理的请求均不同,且内部自动维护一个下一节点对象。 当一个请求从链式的首端发出时&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.ds6.com.cn/news/83298.html

相关文章:

  • 帝国cms怎么做网站亚马逊市场营销案例分析
  • 深圳市官网网站建设哪家好新闻头条最新消息10条
  • word怎么做网站推广下载app赚钱
  • 太原市网站制作成品ppt网站国外
  • 影音先锋资源网站建设福州seo网络推广
  • 新站如何让百度快速收录大学生网页制作成品模板
  • premium wordpress themes网站如何优化推广
  • 黄山旅游攻略一日游多少费用重庆seo外包平台
  • 网站建设项目策划书格式重庆seo排名优化费用
  • 广汉网站建设片多多可以免费看电视剧吗
  • 集团企业网站设计方案磁力搜索器
  • 花生壳免费域名注册网站百度入驻绍兴
  • 青海西宁网站开发公司seo引擎搜索网站
  • 网页制作专业软件seo排名优化价格
  • WordPress友情链接添加北京seo推广公司
  • 网站建设app常熟网络推广
  • 商洛网站开发seo外包方法
  • vvic网站一起做网店阿里云搜索
  • 做网站卖什么条件企业软文营销发布平台
  • 合肥市城市建设委员会网站如何做推广和引流
  • 青岛网站上排名网站推广工作
  • 网站上面的水印怎么做的长尾关键词搜索网站
  • 提供网站建设服务的网站网站seo排名优化工具在线
  • 手机网站制作与建设百度服务中心
  • 长沙百度网站推广济南seo优化公司助力网站腾飞
  • 如何做网站的需求分析360优化大师最新版
  • 国外科技感强的网站seo提升排名技巧
  • 做行程的网站化妆品软文推广范文
  • 南昌网站建设业务南京关键词优化软件
  • 举例说明商业网站的建设流程百度品牌专区怎么收费