http://blog.csdn.net/goalstar/archive/2004/12/01/encod.aspx

解决方案 »

  1.   

    帮你贴出来吧
    /*
     * Copyright 2002 Sun Microsystems, Inc. All rights reserved.
     *
     * Redistribution and use in source and binary forms, with or without
     * modification, are permitted provided that the following conditions
     * are met:
     *
     * - Redistributions of source code must retain the above copyright
     *   notice, this list of conditions and the following disclaimer.
     *
     * - Redistribution in binary form must reproduce the above copyright
     *   notice, this list of conditions and the following disclaimer in
     *   the documentation and/or other materials provided with the
     *   distribution.
     *
     * Neither the name of Sun Microsystems, Inc. or the names of
     * contributors may be used to endorse or promote products derived
     * from this software without specific prior written permission.
     *
     * This software is provided "AS IS," without a warranty of any
     * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
     * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
     * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
     * EXCLUDED. SUN AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES
     * SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
     * DISTRIBUTING THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN
     * OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR
     * FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR
     * PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF
     * LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE,
     * EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
     *
     * You acknowledge that Software is not designed, licensed or intended
     * for use in the design, construction, operation or maintenance of
     * any nuclear facility.
     */
     
    package com.lims.actions.standardline;/**
     * Create Jstar
     * @author PetStore
     *
     */
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.FilterChain;
    import javax.servlet.http.HttpServletRequest;
    import java.io.IOException;
    import javax.servlet.Filter;/**
     * <p>Title: EAF(Enterprise Application Framework)</p>
     * <p>Description: 用于设定Request的编码方式</p>
     * <pre>请在web.xml中定义本Filter,配置如下:
     *    <filter>
     *       <filter-name>EncodingFilter</filter-name>
     *       <display-name>EncodingFilter</display-name>
     *       <description>Set the request encoding</description>
     *       <filter-class>com.netstar.zhuhai.eaf.web.EncodingFilter</filter-class>
     *       <init-param>
     *            <param-name>encoding</param-name>
     *            <param-value>UTF-8</param-value>
     *       </init-param>
     *    </filter>
     *
     *    <filter-mapping>
     *        <filter-name>EncodingFilter</filter-name>
     *        <url-pattern>/*</url-pattern>
     *    </filter-mapping>
     * </pre>
     * @version 1.0
     */public class EncodingFilter implements Filter {
      private FilterConfig config = null;
      private String targetEncoding = "ASCII";  public EncodingFilter() {
      }
      public void init(FilterConfig filterconfig) throws javax.servlet.ServletException {
     this.config = filterconfig;
     this.targetEncoding = config.getInitParameter("encoding");
      }
      public void doFilter(ServletRequest srequest, ServletResponse sresponse, FilterChain filterchain) throws java.io.IOException, javax.servlet.ServletException {
     HttpServletRequest request = (HttpServletRequest)srequest; //set the encoding
     request.setCharacterEncoding(this.targetEncoding); //move to next
     filterchain.doFilter(srequest,sresponse);
      }
      public void destroy() {
     this.config = null;
     this.targetEncoding = null;
      }}
      

  2.   

    写一个servletFilter,charconfig=utf8
    数据库块取出的时候按你写的处理下.就OK.
      

  3.   

    也许用JavaWebStudio开发就没那么多中文乱码问题。
      

  4.   

    在写入数据库的时候还是不行啊,我把JSP页面上的<%@ page contentType="text/html; charset=UTF-8" %>写为UTF-8时在写入数据库时还是乱码,只有charset=GBK时不会乱
      

  5.   

    放在linux下,会有问题的!
    我做的是这样的,关键是MySql的编码问题
    具体什么问题,要具体解决的。
    你提的太笼统了,不知从何说了
      

  6.   

    <set-property
        property="driverClassName"
        value="org.gjt.mm.mysql.Driver" />
      <set-property
        property="url"
        value="jdbc:mysql://localhost/deoa?useUnicode=true&amp;useUnicode=true&amp;characterEncoding=GBK" />
    连接串要这样配置
      

  7.   

    这里有一篇文章,希望多楼主有帮助http://www.javaresearch.org/article/showarticle.jsp?column=106&thread=19240
      

  8.   

    刚好我这两天解决了这个问题.
    错误最重要的一点就是
    重复定义.
    1.将资源文件编成ASCII码
    2.所有JSP页面都改成<%@ page ContentType="text/html;charset=UTF-8"%>
    无须这个response.setContentType("text/html;charset=UTF-8")
    3.设置过滤器,参考代码
    package bbs.filter;import javax.servlet.Filter;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.FilterChain;
    import java.io.IOException;public class SetCharacterFilter implements Filter {
      public void init(FilterConfig filterConfig) throws ServletException {  }
      public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
         request.setCharacterEncoding("UTF-8");
         chain.doFilter(request,response);
      }
      public void destroy() {  }
    }4.在Web.xml文件中设置过滤器
    <filter>
        <filter-name>CharsetFilter</filter-name>
        <filter-class>bbs.filter.SetCharacterFilter</filter-class>
      </filter>
      <filter-mapping>
        <filter-name>CharsetFilter</filter-name>
        <url-pattern>/*</url-pattern>
      </filter-mapping>
    5.所有的提交到数据库中的记录"没有必要"去设置成
    new String(iso.getBytes("ISO-8859-1"), "GBK")
    6.这样输入和输出统一用"UTF-8"码,就没问题了,对了,过滤器里面一定要用UTF-8喔!!
      

  9.   

    我的算是解决了,但为了照顾我的JS写的跳出时间框,我还是在<%@ page ContentType="text/html;charset=UTF-8"%>中把UTF-8改为GBK,不知道这样行不行.反正我现在是没有什么乱码出来了
      

  10.   

    http://blog.csdn.net/weoew/archive/2005/01/12/250292.aspx我的解决方案