关于中文乱码问题,我觉得有两个方面。前端和后端。所谓前端,就是你的页面,显示出来中文乱码。后端乱码问题指的是前台将数据传到后台,后台读取出来是乱码的。
# # 前端乱码案例:这是一个不会乱码的页面。
<%@page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<body>
<h2>Hello World!</h2>
<form action="/user/paramTest"method="post">
用户名:<input type="text" name="username"><br>
密码:<input type="password" name="password"><br>
缴费:<input type="text" name="money"><br>
学生姓名:<input type="text" name="student.name">
学会年龄:<input type="text" name="student.age">
<input type="submit" value="提交">
</form>
</body>
</html>
因为我加了:<%@page contentType="text/html;charset=UTF-8" language="java" %>,所以如果你不加这个限制,那渲染出来就要乱码了。
# # 前台数据传到后台读取出来乱码的解决:
<!-- 配置编码方式-->
<filter>
<filter-name>encodingFilter</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>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>