现在正在学习 JSP,以前用的那个TOMCAT,在获取表单提交的中文数据的时候都要进行编码,以免出现乱码,现在我重新换了系统,重新安装了TOMCAT,和以前不是一个版本的,在获取表单提交的数据的时候不需要进行编码,直接都是中文,不知道是怎么回事,真是搞不懂,自己感觉是TOMCAT 系统默认编码的问题,希望各位大侠给点帮助,感激涕零!!!

解决方案 »

  1.   

    Tomcat是可以设置编码格式的,我见过,不过具体在哪里不记得了,你还是自己上网找一下!
      

  2.   

    tomcat默认是gbk的,要想改变编码方式,修改server.xml即可
      

  3.   

    在不同的版本中好像是有不同的
    在5.0的server.xml中
    <Connector port="81" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" 
     disableUploadTimeout="true" URIEncoding='GBK' />
    指出是GBK,而在5.5的server.xml中
    <Connector port="81" maxHttpHeaderSize="8192"
                   maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                   enableLookups="false" redirectPort="8443" acceptCount="100"
                   connectionTimeout="20000" disableUploadTimeout="true" />
    没有给出编码格式
      

  4.   

    谢谢各位的帮忙,现在好像有一点了解是怎么回事了,不过还是有一点不是太明白。request.getCharacterEncoding()不是获取所提交数据的编码么,但我的程序怎么老是返回null
      

  5.   

    response.setCharacterEncoding("utf-8");  //先设置相应的格式
    request.setCharacterEncoding("utf-8");   //读取页面的编码格式,即用“utf-8”读取上一个页面或servlet传过来的内容
    要获取参数是用request.getParameter("参数名称");