1、前端get傳過來沒問題,經過UTF-8編碼之後,返回前端有問題,可能是Tomcat的編碼設置問題
需要這隻URIEncoding
<Connector port="8080" maxThreads="150" minSpareThreads="25"
maxSpareThreads="75" enableLookups="false" redirectPort="8443"
acceptCount="100" debug="99" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="UTF-8"/>
2、
post 亂碼
response.setCharcacterEncoding("utf-8")
get 亂碼 在後臺獲取字符串後對編碼進行轉換
String name = request.getParameter("name");
name=new String(name.getBytes("ISO-8859-1","utf-8"))
post亂碼 web.xml中設置filter
<!-- 爲了能夠處理中文的post請求,
再配置一個encodingFilter,
以避免post請求中文出現亂碼情況:-->
<filter>
<filter-name>encodingFileter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFileter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
3、html中文亂碼
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
4、jsp中文亂碼
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>