java web開發中有關GET、POST請求編碼亂碼問題

1、GET亂碼問題html

  1.頁面向後臺發送請求的時候,若是你的後臺接收格式不是ISO8859-1的話,則會出現亂碼問題。因爲tomcat的默認編碼格式爲ISO8859-1,能夠更改tomcat的編碼格式通常統一爲utf-8;java

  找到安裝tomcat的server.xml文件添加上一下標紅內容便可;web

  <Connector URIEncoding="utf-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>spring

  2.第二種方式,接收到前臺參數例如(name),先經過解碼器進行解碼,而後在用正確的編碼進行編碼tomcat

    方式一:name= new String(name.getBytes("iso8859-1"), "utf-8");mvc

    方式二:name1 = URLDecoder.decode(name,「iso8859-1」)解碼app

        name2 = URLEncoder.encode(name1,「utf-8」) 編碼框架

2、POST請求亂碼問題jsp

  1.若是使用的是springmvc框架,配置一個攔截器就能夠了post

<!-- post中文編碼亂碼問題 -->
<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>
</filter>


<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

 

 

 

 

 

 

 

  

 

 2.頁面的編碼格式

  1)jsp頁面

  <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

  2)html 忽略,使用IDE時查看便可;

 注意:post請求只要對應正確編碼就OK的;

相關文章
相關標籤/搜索