導緻亂碼問題無非就是編碼不統一,常見的編碼有:utf-8、iso8859-1、gdb、GB2312等。
是以最簡單的方法是把所有的都設定成統一的UTF-8編碼。
1. jsp頁面頭部添加:
2.處理request的post請求出現亂碼的解決方法:
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
3.處理request的get請求出現亂碼的解決方法 方法一:
new String(request.getParameter("condition").getBytes("ISO8859-1"),"UTF-8");
方法二:
用URLEncode和URLDecode
參考:http://m.blog.csdn.net/blog/taotaotaotao910429/8626421
4.架構中進行中文亂碼的解決方案:在過濾器中設定
Spring字元編碼過濾器xml配置:
<!-- 配置字元編碼過濾器,編碼格式設為UTF-8,避免中文亂碼 -->
<filter>
<filter-name>characterEncodingFilter</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>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
參考:
http://blog.csdn.net/xinxin19881112/article/details/4518602