<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    all gone

    all gone

    JSP 處理MySQL數(shù)據(jù)庫(kù)時(shí)的中文問(wèn)題

    以前遇到JSP 處理MySQL數(shù)據(jù)庫(kù)時(shí)的中文問(wèn)題時(shí),采取的是很笨的一種方法,直接用字符串編碼轉(zhuǎn)換函數(shù)進(jìn)行轉(zhuǎn)換,這次從網(wǎng)上搜了一下,找到了一個(gè)使用Filter的可行方法。在Tomcat 5.5+ MySQL4.0.16下通過(guò)。

    filter類(lèi)源碼是從網(wǎng)上找的,如下
    /**
     *
     */
    package com.lzy;

    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;

    /**
     * @author lzy
     *
     */
    public class SetCharacterEncodingFilter implements Filter {
     
     protected String encoding = null;
        protected FilterConfig filterConfig = null;
        protected boolean ignore = true;


     /* (non-Javadoc)
      * @see javax.servlet.Filter#init(javax.servlet.FilterConfig)
      */
     public void init(FilterConfig filterConfig) throws ServletException {
      // TODO Auto-generated method stub
      this.filterConfig = filterConfig;
         this.encoding = filterConfig.getInitParameter("encoding");
         String value = filterConfig.getInitParameter("ignore");
         if (value == null)
          this.ignore = true;
         else if (value.equalsIgnoreCase("true"))
          this.ignore = true;
         else if (value.equalsIgnoreCase("yes"))
          this.ignore = true;
         else
          this.ignore = false;


     }

     /* (non-Javadoc)
      * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)
      */
     public void doFilter(ServletRequest request, ServletResponse response,
       FilterChain chain) throws IOException, ServletException {
      
      // TODO Auto-generated method stub
      if (ignore || (request.getCharacterEncoding() == null)) {
       String encoding = selectEncoding(request);
       if (encoding != null)
        request.setCharacterEncoding(encoding);
      }
      chain.doFilter(request, response);
     }

     /* (non-Javadoc)
      * @see javax.servlet.Filter#destroy()
      */
     public void destroy() {
      // TODO Auto-generated method stub
      
      this.encoding = null;
         this.filterConfig = null;


     }
     
      protected String selectEncoding(ServletRequest request) {

             return (this.encoding);

         }


    }

    在web.xml 文件中作如下設(shè)置:(我使用的是Struts框架)
    <filter>
    <filter-name>Encoding</filter-name>
    <filter-class>com.lzy.SetCharacterEncodingFilter</filter-class>
    <init-param>
    <param-name>encoding</param-name>
    <param-value>GBK</param-value>
    </init-param>
    </filter>

    <filter-mapping>
    <filter-name>Encoding</filter-name>
    <servlet-name>action</servlet-name>
    </filter-mapping>
    <filter-mapping>
    <filter-name>Encoding</filter-name>
    <url-pattern>*.jsp</url-pattern>
    </filter-mapping>


    最后,連接數(shù)據(jù)庫(kù)時(shí),使用下面的url:
    jdbc:mysql://localhost:3306/數(shù)據(jù)庫(kù)名?useUnicode=true&characterEncoding=GBK

    posted on 2005-12-18 22:57 all gone 閱讀(480) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Java

    主站蜘蛛池模板: 久久夜色精品国产噜噜噜亚洲AV| 国产成人免费a在线视频色戒| 最新亚洲成av人免费看| 日本亚洲高清乱码中文在线观看| 午夜dj免费在线观看| 亚洲已满18点击进入在线观看| 国产一卡二卡3卡四卡免费| 亚洲毛片基地日韩毛片基地| 亚洲高清中文字幕免费| 学生妹亚洲一区二区| 免费亚洲视频在线观看| 美女免费精品高清毛片在线视| 亚洲第一页日韩专区| 精精国产www视频在线观看免费| 国产A在亚洲线播放| 亚洲国产精品免费在线观看| 亚洲国产精品无码久久久| 国产成人免费爽爽爽视频| 精品一区二区三区无码免费直播| 久久久久国产成人精品亚洲午夜 | 亚洲精品无码av人在线观看 | 免费国产作爱视频网站| 亚洲乱码日产精品一二三| 亚洲高清视频一视频二视频三| 中文在线免费视频| 亚洲最大中文字幕| 国产在线19禁免费观看国产| 久久av免费天堂小草播放| 久久久久亚洲av无码尤物| 无人影院手机版在线观看免费 | 在线观看免费大黄网站| 午夜免费国产体验区免费的| 亚洲av日韩av天堂影片精品| 成人性生活免费视频| 国产免费久久精品99久久| 亚洲区视频在线观看| 亚洲日本一区二区一本一道| 国产精品久久久久久久久免费| 国产成人va亚洲电影| 亚洲高清无在码在线电影不卡| 伊人久久亚洲综合影院|