前言:在作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 註解便可解決這個問題