一、目标
数据提交前做各种处理
二、代码
1.MsgProcessor.java
public class MsgProcessor { private List<Filter> filters = new ArrayList<Filter>();
private String msg; public String getMsg() {
return msg;
} public void setMsg(String msg) {
this.msg = msg;
} public String process() { filters.add(new SensitiveFilter());
filters.add(new HTMLFilter()); String r = msg;
for(Filter f : filters){
r = f.doFilter(r);
}
return r;
}
}
2.Filter.java
public interface Filter {
public String doFilter(String str);
}
3.HTMLFilter.java
public class HTMLFilter implements Filter { @Override
public String doFilter(String str) {
return str.replace('<', '[').replace(">", "]");
} }
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); } }
三、运行结果