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

南京网站建设案例厦门网站流量优化价格

南京网站建设案例,厦门网站流量优化价格,网站素材站,php网站攻击责任链模式属于行为型设计模式,核心思想是将请求的发送者与接收者进行解耦,构建一条由多个处理对象组成的链式结构。每个处理者决定是否能够处理该对象,否则将其传递给下一个节点进行处理。发送者不知道并不知道由谁来处理 使用场景 当有多个…

责任链模式属于行为型设计模式,核心思想是将请求的发送者与接收者进行解耦,构建一条由多个处理对象组成的链式结构。每个处理者决定是否能够处理该对象,否则将其传递给下一个节点进行处理。发送者不知道并不知道由谁来处理

使用场景

  • 当有多个对象可以处理请求,有对象自行决定是否处理
  • 工作流引擎:请假流程、报销流程等
  • 过滤器模式:对请求或者数据进行过滤
  • 权限设计:对用户角色的验证

核心组件

  • 抽象处理者:Handler
    • 定义了处理请求的接口,并维护下一个处理对象的引用
    • setNext():下一节点
    • handleRequest():处理请求
public interface Handler{void setNext(Handler next);void handleRequest(Object obj);
}
  • 具体处理者:Concrete Handler
    • 实现抽象接口,定义具体的处理逻辑
    • 当前对象无法处理则交由下一级进行处理
public class ConcreteHandler implements Handler{private Handler next@Overridepublic void setNext(Handler next){this.next= next;}@Overridepublic void handleRequest(Object obj) {if (validate(obj)) {System.out.println("参数校验通过");if (next != null) next.handleRequest(obj);} else {System.out.println("参数不合法,终止流程");}}private boolean validate(Object obj) {//具体校验逻辑}
}
  • 客户端:Client
    • 负责将所有的处理对象组装成处理链,客户端无需知晓链的具体结构,只要将请求发送给责任链的第一个处理者即可。

类图

image

  • Handler:抽象类
  • FirstHandler:实现类
  • HandlerClient:客户端类
//抽象类
public interface Handler {  //下一个处理节点  void setNext(Handler next);  void handleRequest(Object obj);  
}//实现类
public class FirstHandler implements Handler{  private Handler next;  @Override  public void setNext(Handler next) {  this.next = next;  }  @Override  public void handleRequest(Object obj) {  if (validate(obj)) {  System.out.println("参数校验通过");  if (next != null) next.handleRequest(obj);  } else {  System.out.println("参数不合法,终止流程");  }  }  private boolean validate(Object obj) {  return Objects.nonNull(obj);  }  
}//客户端类public class HandlerClient {  public static void main(String[] args) {  Handler first = new FirstHandler();  Handler second = new SecondHandler();  Handler third = new ThirdHandler();  first.setNext(second);  second.setNext(third);  Object object = new Object();  first.handleRequest(object);  }  }

模式的优缺点

优点

  • 解耦请求发送者和接受者
  • 能够动态调整链结构,运行过程中添加或者移除节点
  • 支持多层级处理,例如对请求编码、鉴权、限流

缺点

  • 请求可能不满足所有节点,需要单独处理
  • 链结构过长影响性能

总结

使用责任链模型将复杂的处理逻辑拆分为独立的单元,可以动态的进行增删,提高了系统的灵活性和可维护性。

http://www.dtcms.com/wzjs/245007.html

相关文章:

  • 用数字做域名的网站google安卓版下载
  • 怎样搭建网站搜索引擎有哪些网站
  • 野外美食网站设计欣赏seo排名点击 seo查询
  • 重庆旅游seo整站优化google play store
  • 城乡与住房建设厅网站首页怎么做网络推广赚佣金
  • wordpress页面导航条宁波seo推广优化怎么做
  • 网站广告条怎么做seo站内优化包括
  • 凡科做的网站赣州seo外包怎么收费
  • 做网站图片太大好吗seo排名系统源码
  • wordpress主题的网站seo入门讲解
  • 网站弹出信息怎么做广东网站seo
  • 武汉生活网南宁seo优化公司
  • wordpress免回复抖音搜索seo排名优化
  • 做中学网站seo专员是什么
  • 阿里云服务器可以做下载类网站吗如何自己免费制作网站
  • 电商网站功能结构图软文是指什么
  • 英国帮人做设计作业网站seo自然排名
  • 政府网站建设经验官方百度平台
  • 烟台门户网站荆门网络推广
  • 如何做卖菜网站湖南长沙seo教育
  • 谁用腾讯风铃做网站的永久免费客服系统有哪些软件
  • 域名注册完成后如何做网站stp营销战略
  • 大连网站制作建设网站制作多少钱
  • 如何做京东购物网站百度今日排行榜
  • 上海营销型网站建设福州百度关键词排名
  • 委托建设网站的注意事项在线推广企业网站的方法
  • 赚钱做任务的网站有哪些西安seo王
  • 学网络技术培训学校百度seo公司哪家强一点
  • 网站如何做查询表单网络营销是以什么为中心
  • 部分网站打不开的原因数字营销策略有哪些