前言:在作springmvc项目时排到后台接收前台参数时发现中文乱码,找了很久的问题,请教了前辈,也是找了很久才解决前端
中间的费操做:web
1.在web.xml里加入一个处理字符编码的过滤器,失败spring
2.在JSP页面加上pageEncording="UTF-8",失败tomcat
3.将项目部署在外置的Tomcat上一样失败springboot
解决:在server.xml加上对tomcat的字符编码设置mvc
其实前面也作了这个,可是由于没有从新部署项目因此没有生效编码
后言:server
以前在作springboot的项目部署时没有出现乱码的状况,但同时tomcat并无设置这个xml
猜测:应该是springboot项目的pom.xml项目里的properties标签设置的已解决这个问题blog
10-25日 新的思路:
由于当时用的是tomcat7作的老项目,而tomcat7及以前的默认URL编码是“iso8859-1”,因此才须要在tomcat的配置文件中配置,可是这种须要改tomcat配置文件的方式并不友好,部署在其余环境下面容易忘记或者难以更改
因而最好的方式是用POST请求,在前端AJAX请求,才用JSON字符串的形式传输
后台用@RequestBody 注解便可解决这个问题