首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > CSS >

一个request包装类,解决get方式提交数据的乱码 、html标签转义、关键词过滤有关问题

2012-10-23 
一个request包装类,解决get方式提交数据的乱码 、html标签转义、关键词过滤问题/***分享自己写的一个request

一个request包装类,解决get方式提交数据的乱码 、html标签转义、关键词过滤问题

/***分享自己写的一个request包装类,解决get方式提交数据的乱码*html标签转义、关键词过滤问题*/
package com.hcy.test.filter;import java.io.UnsupportedEncodingException;import java.util.Enumeration;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletRequestWrapper;public class MyHttpRequest extends HttpServletRequestWrapper {HttpServletRequest request;String[] dWords={"fuck","shit","操"};public MyHttpRequest(HttpServletRequest request) {super(request);this.request=request;}@Overridepublic String getParameter(String name) {String value=request.getParameter(name);try {//对所有的参数重新编码value=new String(value.getBytes("ISO-8859-1"),"UTF-8");//对html标签进行转义value= filter(value);//对某些词汇进行过滤for(String dw:dWords){value=value.replace(dw, "**");}} catch (UnsupportedEncodingException e) {e.printStackTrace();}return value;}    public String filter(String message) {        if (message == null)            return (null);        char content[] = new char[message.length()];        message.getChars(0, message.length(), content, 0);        StringBuffer result = new StringBuffer(content.length + 50);        for (int i = 0; i < content.length; i++) {            switch (content[i]) {            case '<':                result.append("<");                break;            case '>':                result.append(">");                break;            case '&':                result.append("&");                break;            case '"':                result.append(""");                break;            default:                result.append(content[i]);            }        }        return (result.toString());    }}

热点排行