隨筆 - 3  文章 - 8  trackbacks - 0
          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          2006年

          常用鏈接

          留言簿(1)

          隨筆檔案

          文章分類

          文章檔案

          相冊

          最新隨筆

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

           1package filter.lepapillon.bbs;
           2
           3import java.io.IOException;
           4
           5import javax.servlet.FilterChain;
           6import javax.servlet.FilterConfig;
           7import javax.servlet.ServletException;
           8import javax.servlet.ServletRequest;
           9import javax.servlet.ServletResponse;
          10import javax.servlet.http.HttpServletRequest;
          11
          12/**
          13 * Servlet implementation class for Servlet: EncodingConvFilter
          14 * 本程序是實現bbs中文字符集轉換的過濾器
          15 *
          16 */

          17/**
          18 * @author 劉亭宇
          19 * 
          20 */

          21public class EncodingConvFilter implements javax.servlet.Filter {
          22
          23    /*
          24     * 定義字符串encoding,也就是字符集
          25     */

          26    private String TargetEncoding = "UTF-8";
          27
          28    /*
          29     * 定義filterConfig
          30     */

          31    private FilterConfig filterConfig = null;
          32
          33    /*
          34     * 過濾器銷毀方法
          35     * 
          36     * @see javax.servlet.Servlet#destroy()
          37     */

          38    public void destroy() {
          39        // EXE 過濾器銷毀方法
          40        this.filterConfig = null;
          41
          42    }

          43
          44    /*
          45     * 字符集過濾器初始化方法、在doFilter()前初始化字符集
          46     * 
          47     * @see javax.servlet.Filter#init(javax.servlet.FilterConfig)
          48     */

          49    public void init(FilterConfig request) throws ServletException {
          50        // EXE 字符集過濾器初始化方法、在doFilter()前初始化字符集
          51        // 從web.xml配置文件中取得encoding的值;xml文件中的默認為:UTF-8
          52        this.TargetEncoding = filterConfig.getInitParameter("encoding");
          53
          54    }

          55
          56    /*
          57     * 過濾器方法、對字符集進行轉換
          58     * 
          59     * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest,
          60     *      javax.servlet.ServletResponse, javax.servlet.FilterChain)
          61     */

          62    public void doFilter(ServletRequest srequest, ServletResponse sresponse,
          63            FilterChain chain) throws IOException, ServletException {
          64        // EXE 過濾器方法、對字符集進行轉換
          65
          66        // 將ServletRequest請求轉換成HttpServletRequest
          67        HttpServletRequest hsrequest = (HttpServletRequest) srequest;
          68        hsrequest.setCharacterEncoding(TargetEncoding);
          69        chain.doFilter(srequest, sresponse);
          70    }

          71}

          web.xml配置

              <filter>
                  
          <description>
                  字符集過濾器
          </description>
                  
          <display-name>
                  EncodingConvFilter
          </display-name>
                  
          <filter-name>EncodingConvFilter</filter-name>
                  
          <filter-class>
                  filter.lepapillon.bbs.EncodingConvFilter
          </filter-class>
                  
          <init-param>
                      
          <description>
                      字符集
          </description>
                      
          <param-name>encoding</param-name>
                      
          <param-value>UTF-8</param-value>
                  
          </init-param>
              
          </filter>
              
              
          <filter-mapping>
                  
          <filter-name>EncodingConvFilter</filter-name>
                  
          <url-pattern>/*</url-pattern>
              </filter-mapping>
          posted on 2006-01-04 01:09 水狐 閱讀(254) 評論(0)  編輯  收藏 所屬分類: Servlet 2.4

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 吉木萨尔县| 平泉县| 延安市| 富平县| 侯马市| 东安县| 阳高县| 垫江县| 平山县| 泰安市| 平罗县| 南乐县| 道孚县| 阿坝| 凤山市| 齐齐哈尔市| 庐江县| 佛冈县| 小金县| 库车县| 江门市| 湖州市| 科技| 禄劝| 会泽县| 威海市| 渭源县| 鹿泉市| 双牌县| 孟连| 英山县| 迁西县| 镇江市| 张掖市| 商城县| 洪洞县| 桦南县| 黄石市| 留坝县| 海安县| 沈丘县|