zoukankan      html  css  js  c++  java
  • controller接收前台数据—中文乱码问题

             项目用的开发环境为tomcat+eclipse+SSM

            正如题目,controller接收前台数据—中文乱码问题,在页面编码为UTF-8的前提下,解决方案有二:

    一)

            controller接收数据时,将类型强制转换

    1. String keyword = new String(request.getParameter("keyword").getBytes("ISO-8859-1"), "utf-8");  

    二)

            查看tomcat的配置文件编码,tomcat的默认编码是iso8859-1,而程序的默认编码为UTF-8,这里出现了冲突,所以修改tomcat下的conf/server.xml文件。

    找到如下代码: 

    1. <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />  

    这段代码规定了Tomcat监听HTTP请求的端口号等信息。

    修改为如下情况

    1. <Connector port="8080"  protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />  
    重启tomcat就可以啦!

    小编经验谈:

            第一种方法,小编也是使用过的,之前的项目使用的应用服务器为Jboss,是公司统一配置的,所以不存在Jboss配置的问题,使用第一种方法可以解决。

            第二种方法,是目前这个项目,应用服务器为tomcat,用的是自己的。遇到问题的时候,首先想到的是第一种方法,确实也是这么解决的。在本地是解决了,但是代码提交之后,在服务器上测试,问题并没有解决,到网上查了一下,才知道是tomcat的问题。

            修改tomcat的配置文件时,先是修改的tomcat安装路径下的配置文件,重启项目之后并没有效果,再次查看tomcat的配置文件,修改过的代码又还原回去了。

       最后在下图的位置修改的配置文件,启动之后,就可以了。


  • 相关阅读:
    C#’s ~ vs Java’s finalize
    做Java开发这一年
    assertThat, assertEquals, assertTrue
    给Cuke4Duke添加一个AfterAll标签(一):使用Cuke4Duke
    心理问题的根源
    何谓数学
    人生谁看透
    人本主义与自由意志
    哲学的基本问题
    贫穷与教育
  • 原文地址:https://www.cnblogs.com/jpfss/p/8630758.html
Copyright © 2011-2022 走看看