spring表单—乱码解决方案

1.POST方式提交

A.jsp页面POST方式提交表单

B.web.xml配置过滤器

  <!-- spring过滤器解决乱码问题 -->
  <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>
  </filter>
  <filter-mapping>
      <filter-name>encodingFilter</filter-name>
      <url-pattern>/*</url-pattern>
  </filter-mapping>

C.保证文件的编码格式(文件上按右键选Properties里的编码格式)、JSP的pageEncoding、charset的编码必须跟过滤器的编码一致

2.GET方式提交

如果采用post提交,会走Filter,但是如果是用get方式,是不走Filter的,所以在后端会变成乱码,解决方案有两条。

A.一种是设置tomcat的server.xm里面的connector,效果如下:

<Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" URIEncoding="UTF-8" />

B.一种是在提交的时候利用javascript的encodeURI进行编码

原文地址:https://www.cnblogs.com/57rongjielong/p/7818826.html