项目场景(建立在配置了编码过滤器的基础上!!!):
springMVC框架,获取浏览器提交的form表单 请求报文中请求体中数据的值中文乱码问题。
问题描述
直接上代码,通过Thymeleaf视图解析器解析
<form th:action="@{/testRequestBody}" method="post" enctype="text/plain">
<input type="text" name="username">
<input type="password" name="password">
<input type="submit" value="测试@RequestBody注解">
</form>
编码过滤器要配置在最前面!!! 路径:src/main/webapp/WEB-INF/web.xml
<!-- 配置编码过滤器-->
<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>forceResponseEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
解决方案 和 原因分析:
提示:由于本人总结能力有限,把我认为讲的很通透的一篇文章贴进来