Tomcat 3.23以下的版本
对于Tomcat 3.23以下版本,Java中的中文问题网上已经谈了不少,一般遇到中文问题使用转换函数转换.toChinese()
public static String toChinese(String strvalue)
   {
         try{
             if(strvalue==null)
                return null;
             else
             {
                strvalue = new String(strvalue.getBytes("ISO8859_1"), "GBK");
                return strvalue;
         }
         }catch(Exception e){
               return null;
         }
   }凡是涉及中文字符串,如从数据库中读取中文字符串,或变量名赋值时,使用toChinese函数:
toChinese("这是中文字符串")注:该办法在使用javamail发送中文信息时似乎有问题Tomcat 4.0以上的版本
在4.0以后的版本,已经不需要象3.23版本中使用字符转换函数:(1)编译javabean时 javac 命令行加上-encoding ISO8859_1(2)在Jsp头部中加入<%@ page contentType="text/html;charset=ISO8859_1" %>是不是很简单? 使用本办法基本可以对付实际应用,推荐!但也有一个缺点是,通过form表单get参数;或在url后附带中文,这个办法就失效,我相信应该有办法解决.该办法原理就是在java的各个环节统一编码为:ISO8859_1.修改tomcat
该办法是一位网友在论坛贴出的,我没有试验,转载于此:只要修改一个地方就行了,文件为: 
tomcat4/src/catalina/src/share/org/apache/catalina/connector/HttpReque 
stBase.java 
找到protected void parseParameters()方法,把 
if (encoding == null) 
encoding = "ISO-8859-1"; 
改为 
if (encoding == null) 
encoding = "GBK"; 
编译: 
解开jakarta-servletapi-4的原码包,找到servlet.jar文件设置到CLASSPATH 
找到tomcat4.0.1的bin包将catalina.jar设置到CLASSPATH. 
因为编译时要使用这些api. 
然后javac HttpRequestBase.java生成两个class文件. 
解开catalina.jar jar xvf catalina.jar(tomcat bin包中的) 
覆盖调原来的两个class文件: 
jar cvf catalina.jar org 
即可 
重启tomcat4,一切OK!,你再也不用编写烦人的编码转换了。

解决方案 »

  1.   

    配置url时,后面加这个看看characterEncoding=8859_1
      

  2.   

    只要修改一个地方就行了,文件为: 
    tomcat4/src/catalina/src/share/org/apache/catalina/connector/HttpReque 
    stBase.java 
    找到protected void parseParameters()方法,把 
    if (encoding == null) 
    encoding = "ISO-8859-1"; 
    改为 
    if (encoding == null) 
    encoding = "GBK"; 
    编译: 
    解开jakarta-servletapi-4的原码包,找到servlet.jar文件设置到CLASSPATH 
    找到tomcat4.0.1的bin包将catalina.jar设置到CLASSPATH. 
    因为编译时要使用这些api. 
    然后javac HttpRequestBase.java生成两个class文件. 
    解开catalina.jar jar xvf catalina.jar(tomcat bin包中的) 
    覆盖调原来的两个class文件: 
    jar cvf catalina.jar org 
    即可 
    这个,没有问题,但是好像到了4.1.x的版本,就好像不行了我没有试过了,因为转到weblogic上了有网友好像说不可以
      

  3.   

    楼上的方法我也见过
    不知道楼上成功了没有???最简单的在文件头上加:
    <%@ page contentType="text/html;charset=GBK" %>
      

  4.   

    修改jive_config.xml中的<serverURL>jdbc:mysql://localhost/jive?useUnicode=true&characterEncoding=gb2312","root","</serverURL>
    时 报错! 我在网上查了一下 说需要使用XML转意字符:&,什么意思?