JPBC ing: 留言板之二:處理jsp中出現的中文亂碼問題--字符過濾器

          ??????在參數傳遞過程中,經常會碰到中文亂碼問題,有好多種解決方法,其中一種就是用到過濾器。

          CharacterEncodingFilter.java
          package?filter;

          import?java.io.IOException;

          import?javax.servlet.Filter;
          import?javax.servlet.FilterChain;
          import?javax.servlet.FilterConfig;
          import?javax.servlet.ServletException;
          import?javax.servlet.ServletRequest;
          import?javax.servlet.ServletResponse;
          /**
          ?*?jsp中文亂碼的Filter過濾器
          ?*?
          @author?nonels
          ?*
          ?
          */


          public?class?CharacterEncodingFilter?implements?Filter?{
          ????
          protected?String?encoding;????//????字符編碼
          ????protected?boolean?ignore;????//????是否忽略大小寫
          ????public?void?init(FilterConfig?filterConfig)?throws?ServletException?{
          ????????encoding?
          =?filterConfig.getInitParameter("encoding");
          ????????String?value?
          =?filterConfig.getInitParameter("ignore");
          ????????
          if?(value?==?null)?{
          ????????????ignore?
          =?true;
          ????????}
          ?else?if?(value.equalsIgnoreCase("true"))?{
          ????????????ignore?
          =?true;
          ????????}
          ?else?if?(value.equalsIgnoreCase("yes"))?{
          ????????????ignore?
          =?true;
          ????????}

          ????}


          ????
          public?void?doFilter(ServletRequest?request,?ServletResponse?response,
          ????????????FilterChain?filterChain)?
          throws?IOException,?ServletException?{
          ????????
          if?(ignore?==?true?||?encoding?!=?null)?{
          ?????????????request.setCharacterEncoding(encoding);
          ?????????????filterChain.doFilter(request,?response);
          ????????}

          ????}


          ????
          public?void?destroy()?{
          ????????encoding?
          =?null;
          ????}

          ????

          }


          XML中的配置加上以下:
          ??????<filter>
          ????????
          <filter-name>CharacterEncodingFilter</filter-name>
          ????????
          <filter-class>filter.CharacterEncodingFilter</filter-class>
          ????????
          <init-param>
          ????????????
          <param-name>ignore</param-name>
          ????????????
          <param-value>true</param-value>
          ????????
          </init-param>
          ????????
          <init-param>
          ????????????
          <param-name>encoding</param-name>
          ????????????
          <param-value>GBK</param-value>
          ????????
          </init-param>
          ????
          </filter>
          ????
          <filter-mapping>
          ????????
          <filter-name>CharacterEncodingFilter</filter-name>
          ????????
          <url-pattern>/*</url-pattern>
          ????
          </filter-mapping>

          posted on 2008-10-16 23:51 nonels 閱讀(550) 評論(0)  編輯  收藏 所屬分類: J2EE

          <2008年10月>
          2829301234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導航

          統計

          常用鏈接

          留言簿(2)

          隨筆分類(16)

          隨筆檔案(16)

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 永宁县| 桐柏县| 永嘉县| 香格里拉县| 年辖:市辖区| 安达市| 承德县| 齐齐哈尔市| 手游| 潼关县| 长宁区| 汕头市| 磐石市| 萨嘎县| 科技| 潜江市| 重庆市| 留坝县| 津南区| 浏阳市| 荣昌县| 唐海县| 怀柔区| 新河县| 东乡族自治县| 郸城县| 罗江县| 泉州市| 吴桥县| 保靖县| 惠州市| 龙江县| 手机| 咸宁市| 交城县| 泾源县| 衡水市| 定安县| 博野县| 昌乐县| 舟曲县|