jsp生成的html页面写字符集了吗?

解决方案 »

  1.   

    我都说了,同样一个JSP页面,用个bean直接连接数据库不会乱,而用了weblogic连接池就乱了...
      

  2.   

    强烈建议你用过滤器!
    一般情况下都可以解决,而且下次就不会遇到这样的乱码问题。
    package com.tsinghua.filter;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;public class EncodingFilter  implements Filter{
        /** 默认的字符编码 */
        protected String encoding = null;
        private FilterConfig config = null;     public void init(FilterConfig config) throws ServletException {
            this.config = config;
            this.encoding = config.getInitParameter("encoding");
        }
        public void doFilter(ServletRequest request, ServletResponse response,
                             FilterChain chain) throws IOException,
            ServletException {
            if (!"ignore".equals(this.encoding)) {
                request.setCharacterEncoding(this.encoding);
            }
            chain.doFilter(request, response);
        }
        
        public void destroy() {
            config = null;
        }
    }web.xml下面:
      <filter>
    <filter-name>EncodingFilter</filter-name>
    <filter-class>com.tsinghua.filter.EncodingFilter</filter-class>
    <init-param>
    <param-name>encoding</param-name>
    <param-value>GBK</param-value>
    </init-param>
    </filter> <filter-mapping>
    <filter-name>EncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping> 
      

  3.   

    还是那句话.....同样一个JSP页面,用个bean直接连接数据库不会乱,而用了weblogic连接池就乱了...
      

  4.   

    在Tomcat   文件夹下有个过滤器直接拿过来用就行了SetCharacterEncodingFilter,直接去搜下问题就解决啦
    乱码问题确实让人烦!
      

  5.   

    String  s=new String("你要处理的中文".getBytes("ISO-8859-1"),"UTF-8")
      

  6.   

    先看看是不是数据库里就是乱的。要是那里乱码,就是数据库的问题了。先保证数据库撒。如果是jsp导致的乱码就看这里:http://test.family168.com/tutorial/jsp/html/jsp-ch-02.html#jsp-ch-02-02
      

  7.   

    先看看是不是数据库里就是乱的。要是那里乱码,就是数据库的问题了。先保证数据库撒。如果是jsp导致的乱码就看这里:http://test.family168.com/tutorial/jsp/html/jsp-ch-02.html#jsp-ch-02-02
      

  8.   

    先看看是不是数据库里就是乱的。要是那里乱码,就是数据库的问题了。先保证数据库撒。如果是jsp导致的乱码就看这里:http://test.family168.com/tutorial/jsp/html/jsp-ch-02.html#jsp-ch-02-02
      

  9.   

    疯了.........................
    在网上搜了好久,能用的方法我都用了..
    大家再看看我这个情况,
    从request.getParameter("..")过来的String完全能正常显示,就是bean.doSomething()修改数据库内容才乱了,
    而且这个问题是在通过weblogic连接池才发生,如果这个bean通过MysqlDriver直接与数据库相连是不发生乱码的.
    请看我现在配置:
    1.weblogic8.1
    jdbc:mysql://localhost:3306/myweb?useUnicode=true&characterEncoding=gb2312
    2.
    mysql5.0  gb2312
    3.
    web.xml
    <context-param>
        <param-name>weblogic.httpd.inputCharset./*</param-name>
        <param-value>GB2312</param-value>
      </context-param>4.weblogic.xml
    <weblogic-web-app>
      <jsp-descriptor>
        <jsp-param>
          <param-name>compileCommand</param-name>
          <param-value>javac</param-value>
        </jsp-param>
        <jsp-param>
          <param-name>compilerSupportsEncoding</param-name>
          <param-value>true</param-value>
        </jsp-param>
        <jsp-param>
          <param-name>encoding</param-name>
          <param-value>GB2312</param-value>
        </jsp-param>
      </jsp-descriptor>
      <charset-params>
        <input-charset>
          <resource-path>/*</resource-path>
          <java-charset-name>GB2312</java-charset-name>
        </input-charset>
      </charset-params>
      <context-root>MyWebPro</context-root>
    </weblogic-web-app>Who can help me?????????????
      

  10.   

    只能用"疯了"来形容自己,在网站搜了好多,大同小异,能试的我都试了.
    大家再看看我的配置:
    1.weblogic8.1
    jdbc:mysql://localhost:3306/myweb?useUnicode=true&characterEncoding=gb2312
    2.mysql5.0
    gb2312
    3.web.xml
    <context-param>
        <param-name>weblogic.httpd.inputCharset./*</param-name>
        <param-value>GB2312</param-value>
      </context-param>4.weblogic.xml
    <weblogic-web-app>
      <jsp-descriptor>
        <jsp-param>
          <param-name>compileCommand</param-name>
          <param-value>javac</param-value>
        </jsp-param>
        <jsp-param>
          <param-name>compilerSupportsEncoding</param-name>
          <param-value>true</param-value>
        </jsp-param>
        <jsp-param>
          <param-name>encoding</param-name>
          <param-value>GB2312</param-value>
        </jsp-param>
      </jsp-descriptor>
      <charset-params>
        <input-charset>
          <resource-path>/*</resource-path>
          <java-charset-name>GB2312</java-charset-name>
        </input-charset>
      </charset-params>
      <context-root>MyWebPro</context-root>
    </weblogic-web-app>能说的我都说了,Who can help me??????????
      

  11.   

    只能用"疯了"来形容自己,在网站搜了好多,大同小异,能试的我都试了.
    大家再看看我的配置:
    1.weblogic8.1
    jdbc:mysql://localhost:3306/myweb?useUnicode=true&characterEncoding=gb2312
    2.mysql5.0
    gb2312
    3.web.xml
    <context-param>
        <param-name>weblogic.httpd.inputCharset./*</param-name>
        <param-value>GB2312</param-value>
      </context-param>4.weblogic.xml
    <weblogic-web-app>
      <jsp-descriptor>
        <jsp-param>
          <param-name>compileCommand</param-name>
          <param-value>javac</param-value>
        </jsp-param>
        <jsp-param>
          <param-name>compilerSupportsEncoding</param-name>
          <param-value>true</param-value>
        </jsp-param>
        <jsp-param>
          <param-name>encoding</param-name>
          <param-value>GB2312</param-value>
        </jsp-param>
      </jsp-descriptor>
      <charset-params>
        <input-charset>
          <resource-path>/*</resource-path>
          <java-charset-name>GB2312</java-charset-name>
        </input-charset>
      </charset-params>
      <context-root>MyWebPro</context-root>
    </weblogic-web-app>能说的我都说了,Who can help me??????????
      

  12.   

    只能是weblogic的问题,不是Mysql的问题
      

  13.   

    顶5楼
    数据库字符集、jsp&html设定字符集和保存文件时都用utf-8
      

  14.   

    算了吧.用UTF-8页面显示都显示不了,直接报错.
    weblogic.utils.ParsingException: nested TokenStreamException: antlr.TokenStreamIOException
      

  15.   

    算了.重装Mysql 就好了..晕了..