对于常见的乱码有3 种 : get请求乱码,post请求乱码,浏览器显示乱码
1. get 方式
前端编码-- encodeURI(encodeURI("中文"))加码2 次。
后端获取数据在进行 URLDecoder.decode(request.getParameter("参数名"),"UTF-8")。首先得确认传过来的是utf-8 的编码。
2. post 方式:
<!-- 编码过滤器 --> <filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <async-supported>true</async-supported> <!-- 解决post乱码 --> <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>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>