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的配置文件,修改过的代码又还原回去了。

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


  • 相关阅读:
    IIS10中使用OpenSSL来创建CA并且签发SSL证书
    vim简单题练习-------出自《鸟哥的linux私房菜》第309页码题目
    Linux删除命令rm
    CentOS下Vim加密解密文本
    Linux中bash shell环境变量
    Linux文件系统损坏导致无法正常启动与fsck修复工具
    rm -rf /*时遇到的趣事
    Linux中tree无法正常显示中文的解决方法
    执行shell脚本的四种方式
    私有网络(VPC)概述
  • 原文地址:https://www.cnblogs.com/jpfss/p/8630758.html
Copyright © 2011-2022 走看看