星星博客 »  > 

post请求乱码

最近在学习springMVC,然后今天学习了post请求,出现了这样一个问题

当请求方法是get的时候,在浏览器中提交请求,中文不会乱码

但是当请求方法是post的话,在浏览器提交请求后,就会出现中文乱码

如何解决这个问题呢?这个需要在web.xml中声明一个过滤器,这个过滤器是框架提供的,用来解决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>
        <init-param>
<!--            强制请求对象request使用encoding的编码方式-->
            <param-name>forceRequestEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
        <init-param>
<!--            强制应答对象response使用encoding的编码方式-->
            <param-name>forceResponseEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>

这样就可以解决post请求中中文乱码情况了

相关文章