zoukankan      html  css  js  c++  java
  • Java-马士兵设计模式学习笔记-责任链模式-处理数据

    一、目标

    数据提交前做各种处理

    二、代码

    1.MsgProcessor.java

     1 public class MsgProcessor {
     2     
     3     private List<Filter> filters = new ArrayList<Filter>();
     4     private String msg;
     5     
     6     public String getMsg() {
     7         return msg;
     8     }
     9 
    10     public void setMsg(String msg) {
    11         this.msg = msg;
    12     }
    13 
    14     public String process() {
    15         
    16         filters.add(new SensitiveFilter());
    17         filters.add(new HTMLFilter());
    18         
    19         String r = msg;
    20         for(Filter f : filters){
    21             r = f.doFilter(r);
    22         }
    23         return r;
    24     }
    25 }

    2.Filter.java

    1 public interface Filter {
    2     public String doFilter(String str);
    3 }

    3.HTMLFilter.java

    1 public class HTMLFilter implements Filter {
    2 
    3     @Override
    4     public String doFilter(String str) {
    5         return str.replace('<', '[').replace(">", "]");
    6     }
    7 
    8 }

    4.SensitiveFilter.java

    public class SensitiveFilter implements Filter {
    
        @Override
        public String doFilter(String str) {
            return str.replace("敏感", "幸福");
        }
    
    }

    5.Test.java

    public class Test {
    
        @org.junit.Test
        public void testFilter(){
            
            String msg = "<html>敏感字眼</html>"; 
            MsgProcessor processor = new MsgProcessor();
            processor.setMsg(msg);
            String result = processor.process();
            System.out.println(result);
            
        }
    
    }

    三、运行结果

  • 相关阅读:
    poj2186强连通分量
    poj1459SAP最大流模板题
    poj2391Floyd+二分+最大流
    curl上传下载入门
    Mysql存储过程
    小球旋转
    钟表单摆
    java小记 摘抄
    servlet的一些收集总结
    Javascript基础小结
  • 原文地址:https://www.cnblogs.com/shamgod/p/4590764.html
Copyright © 2011-2022 走看看