隨筆 - 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

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


          網站導航:
           
          主站蜘蛛池模板: 宜川县| 武夷山市| 达州市| 海兴县| 抚宁县| 商洛市| 安阳市| 杂多县| 三亚市| 靖远县| 福海县| 光泽县| 年辖:市辖区| 台东市| 库车县| 油尖旺区| 昔阳县| 朝阳区| 长阳| 洱源县| 个旧市| 龙岩市| 夏河县| 吉首市| 连城县| 彭阳县| 应城市| 大宁县| 长顺县| 沈阳市| 贞丰县| 尚志市| 郑州市| 西乌| 五原县| 克东县| 昌黎县| 理塘县| 梅州市| 东兴市| 饶平县|