针对前台数据传到后台汉字出现乱码的情况分析及解答

针对前台数据传到后台汉字出现乱码的情况分析及解答

首先,出现这种问题的原因:

  一般默认安装的tomcat应用服务器的接收get方式提交的数据是以ISO-8859-1方式处理的,假如服务器接收的url链接是以gbk方式加密的。那么你需要解码才能对上边的中文进行正确的识别。否则你服务器接收到的就是乱码。

解决方法是:

  一般的解码操作的方法是new String(request.getParameter("zhongwen").getBytes("ISO-8859-1"),"GBK"),意思就是将获取的数据转成GBK。

其次,针对不想解码操作的对象来说。还有种解决方法:

  在tomcat/conf/server.xml中增加一个配置参数:URIEncoding="GBK"(此处是针对gbk编码的设定)  

  最终更改文件的位置在:
    <Connector port="80" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true"
     URIEncoding="GBK"/>
  就是在你更改tomcat端口的地方。Connector上增加这么一个参数就ok了。
同样,如果你要接收的是UTF-8类型的数据,那么就仿照GBK这种方式做处理就ok了

posted on 2013-10-25 11:55  问情木头  阅读(528)  评论(0)    收藏  举报