700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 总结:SpringMVC 中 GET 和 POST 方式请求中的中文乱码问题

总结:SpringMVC 中 GET 和 POST 方式请求中的中文乱码问题

时间:2022-03-28 18:08:03

相关推荐

总结:SpringMVC 中 GET 和 POST 方式请求中的中文乱码问题

独角兽企业重金招聘Python工程师标准>>>

以下是 SpringMVC 中 GET 和 POST 方式请求中的中文乱码问题的解决方法。

1,GET方式中文乱码:

修改tomcat的server.xml配置文件,如下:

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

改为:

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

加上useBodyEncodingForURI="true"后,可以解决普通get请求的中文乱码问题,但是对于通过ajax发起的get请求中文依然会乱码,请把useBodyEncodingForURI="true"改为URIEncoding="UTF-8"即可。

我自己试了一下,只要加上URIEncoding="UTF-8" 对所有类型的 GET 请求都起作用。

注意:如果你是更改的tomcat安装目录的server.xml配置文件,那么在用eclipse运行项目时会发现配置没起作用,其实是因为eclipse在运行项目时是用的eclipse中配置的tomcat,那么问题就好解决了,打开eclipse中的tomcat配置文件,改为如下即可:

2,POST方式中文乱码:

在项目中的 web.xml 中加上如下配置即可:

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

------------------------------------------------

相关参考:

/liukemng/p/4178882.html

/blog/1662232

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。