解决SpringMVC后台参数中文乱码问题

来源:互联网 发布:去除广告软件 编辑:程序博客网 时间:2024/04/20 13:45

问题描述:

在Controller中接收到的POST参数如果是中文的话,显示为乱码。已知客户端传过来时编码为UTF-8。


问题产生分析:

spring MVC中默认的编码格式为“ISO-8859-1”,因此造成乱码。


1、配置过滤器

  <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>  </filter>  <init-param>              <param-name>forceEncoding</param-name>              <param-value>true</param-value>          </init-param>  <filter-mapping>    <filter-name>CharacterEncodingFilter</filter-name>    <url-pattern>/*</url-pattern>  </filter-mapping>

这里需要注意的是,最好把这段代码放在web.xml中开头的位置,因为拦截有顺序,如果放在后面的话容易拦截不到。


2、转一下
String str=newString((request.getParameter("bigQuestionTypeName")).getBytes("iso-8859-1"),"utf-8")


1 0
原创粉丝点击