成長中的記憶
          這是我的成長,這是我的天地,學習JAVA,只因快樂。
          posts - 4,comments - 16,trackbacks - 0

          做JSP程序時頁面傳的文字經常是亂碼,如何解決呢?

          一種方法是把tomcat中所有的<Connector>標簽的URIEncoding屬性進行設置,如: <Connector port="8000" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK" />

          而另一種方法就是寫過濾器

          import javax.servlet.*;
          import javax.servlet.http.HttpServletRequest;
          import java.io.IOException;

          public class EncodingFilter implements Filter {
              FilterConfig config = null;
              // default to GBK
              private String targetEncoding = "GBK";

              public void init(FilterConfig config) throws ServletException {
                  this.config = config;
                  this.targetEncoding = config.getInitParameter("encoding");
              }

              public void destroy() {
                  config = null;
                  targetEncoding = null;
              }

              public void doFilter(ServletRequest srequest, ServletResponse sresponse,
                                   FilterChain chain) throws IOException, ServletException {

                  HttpServletRequest request = (HttpServletRequest)srequest;
                  request.setCharacterEncoding(targetEncoding);
                  chain.doFilter(srequest, sresponse);
              }
          }

          配置:在web.xml中添加
              <filter>
                  <filter-name>encodingFilter</filter-name>
                  <filter-class>xx.xx.xx.EncodingFilter</filter-class>
                  <init-param>
                      <param-name>encoding</param-name>
                      <param-value>Shift_JIS</param-value>
                  </init-param>
                  <init-param>
                      <param-name>useragents</param-name>
                      <param-value>Mac</param-value>
                  </init-param>
              </filter>

              <filter-mapping>
                  <filter-name>encodingFilter</filter-name>
                  <url-pattern>/*</url-pattern>
              </filter-mapping>

          至于來自何處,忘記了。嘿嘿。。。

          posted on 2006-02-17 16:06 aiyoyoyo 閱讀(4000) 評論(1)  編輯  收藏 所屬分類: JSP

          FeedBack:
          # re: JSP亂碼解決(過慮器EncodingFilte11111
          2014-03-19 08:53 | 1111
          11111  回復  更多評論
            
          主站蜘蛛池模板: 读书| 洛阳市| 兴隆县| 西藏| 靖安县| 特克斯县| 额济纳旗| 长春市| 江门市| 岐山县| 玛曲县| 隆尧县| 吴桥县| 慈溪市| 无锡市| 抚顺县| 台中市| 平昌县| 花垣县| 东海县| 武安市| 固始县| 晋中市| 广汉市| 九台市| 浠水县| 定西市| 杨浦区| 开阳县| 墨江| 莒南县| 雅江县| 色达县| 英吉沙县| 城市| 安阳市| 河源市| 孝感市| 龙岩市| 浏阳市| 辽宁省|