SpringMVC中文乱码 controller乱码

从前台jsp的表单提交后 , 传到后台的controller中, 获得的中文是乱码




首先判断jsp的页面编码是否utf-8

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


注意: form表单提交方式为必须为post,get方式下面spring编码过滤器不起效果

<form action="${ctx}/user/addUser" name="userForm" method="post">  


修改web.xml,增加编码过滤器,如下(注意,需要设置forceEncoding参数值为true)

<!--编码过滤器-->
<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>forceEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>characterEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>


以上方法主要针对于数据从jsp页面到controller的过程 .
不包括解决其他情况的编码问题 (如数据库编码)

猜你喜欢

转载自blog.csdn.net/a241903820/article/details/51607002