加上
<%@page contentType="text/html;charset=gb2312"%>----簡體
<%@page contentType="text/html;charset=Big5"%>----繁體
<%@page contentType="text/html;charset=GBK"%>----簡繁體

解决方案 »

  1.   

    import javax.servlet.*;
    import java.io.IOException;
    public class SetCharacterEncodingFilter implements Filter {protected String encoding = null;
    protected FilterConfig filterConfig = null;
    protected boolean ignore = true;public void destroy() {this.encoding = null;
    this.filterConfig = null;}
    public void doFilter(ServletRequest request, ServletResponse response,
    FilterChain chain)
    throws IOException, ServletException {
    if (ignore || (request.getCharacterEncoding() == null)) {
    String encoding = selectEncoding(request);
    if (encoding != null)
    request.setCharacterEncoding(encoding);
    }
    chain.doFilter(request, response);}
    public void init(FilterConfig filterConfig) throws ServletException {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;}
    protected String selectEncoding(ServletRequest request) {return (this.encoding);}}
    --------------------------------------
    //放如<web-app>中<filter> 
    <filter-name>Set Character Encoding</filter-name> 
    <filter-class>*.SetCharacterEncodingFilter</filter-class>
    <init-param>
    <param-name>encoding</param-name>
    <param-value>UTF-8</param-value>            //多换几个编码方式试试
    </init-param>
    <init-param>
    <param-name>ignore</param-name>
    <param-value>true</param-value>
    </init-param> 
    </filter> 
    <filter-mapping> 
    <filter-name>Set Character Encoding</filter-name>
    <url-pattern>/*</url-pattern> 
    </filter-mapping>
      

  2.   

    TO:kidman521(我说美丽的意义是永久珍藏,你说美丽的意义是从此遗忘) 谢谢你的建议,这样可能更有效,我测试一下看看。
      

  3.   

    你可以在连接数据库的时候把编码转换一下
    试一下这样看行不
    =================
    public static String toUnicode(String sGb) {
        if (sGb == null) {
          return null;
        }
        if (sGb.trim().length() == 0) {
          return sGb;
        }    String sUnicode = "";
        try {
          sUnicode = new String(sGb.getBytes("ISO-8859-1"), "GB2312");
        }
        catch (Exception e) {
          return "";
        }
        return sUnicode;
      }
    用的时候调用toUnicode()就行了