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