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的;

相关文章
相关标签/搜索