责任链模式

责任链模式

有的时候,客户端请求发给服务器处理之前,需要进行一系列的预处理,每次预处理由某个对象完成(完成一定职责),一系列的对象形成了链条,这就是责任链模式(Chain of Responsibility Pattern)
责任链模式_第1张图片
假如我们在论坛发表文章,那么服务端在发表或者存入数据库之前,会对文章内容进行安全检查,安全检查分为很多类,这里我们使用责任链模式来实现
责任链模式_第2张图片

  1. 我们写一篇文章,假设文章是字符串,通常服务端在将文章发布或者存入数据库之前,会对文章内容进行一些处理,比如说敏感词检测、脚本检测等,首先创建文章Msg对象
class Msg {
     
   String msg;

   public String getMsg() {
     
      return msg;
   }

   public void setMsg(String msg) {
     
      this.msg = msg;
   }

   @Override
   public String toString() {
     
      return "Msg{" +
            "msg='" + msg + '\'' +
            '}';
   }
}
  1. 我们先使用最普通的方式,也就是处理字符串来完成检测
public static void main(String[] args) {
     
      Msg m = new Msg();
      m.setMsg("大家好:),我是程序狗 devin.com 
                    
                    

你可能感兴趣的:(设计模式)