在SpringMVC后台控制层获取参数的方式主要有两种,一种是request.getParameter("name"),另外一种是用注解@RequestParam直接获取。可以通过required=false或者true来要求@RequestParam配置的前端参数是否一定要传。 但问题是到了后台出现乱码,不论是SQL查询关键字,还是其他参数,试了几种方案
1.xml配置
<!-- 字符过滤器 -->
<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>
还是不管用
再改工程里的tomcat的配置文件server.xml
Connector标签增加useBodyEncodingForURI="true"属性即可,如:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
useBodyEncodingForURI="true"
URIEncoding="utf-8"/>
网友评论