SpringMVC 解决GET请求时中文乱码的问题
程序员文章站
2022-07-15 11:45:44
...
之前项目中的web.xml中的编码设置:
<filter>
<filter-name>CharacterEncoding</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>CharacterEncoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
上面是springmvc的字符串编码过滤器,但是对于get请求里面的中文然并卵。get请求默认编码格式是ISO8859-1,所以就是要将其转换成utf-8就ok了。你可以在请求处理的代码里面对中文字符串进行转码:
String param = new String(param.getBytes("ISO8859-1"), "UTF-8");
但是这种方式不够优雅,每个中文get请求你都要转码。更好的办法是在tomcat的服务配置文件server.xml里面加上配置URIEncoding="UTF-8":
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
上一篇: 基于url的get请求springmvc出现中文参数乱码
下一篇: SpringMVC学习笔记(四)
推荐阅读
-
PHP中使用file_get_contents抓取网页中文乱码问题解决方法
-
ajax的get请求时缓存处理解决方法
-
Java Http请求传json数据乱码问题的解决
-
angular4 获取wifi列表中文显示乱码问题的解决
-
ubuntu系统下matplotlib中文乱码问题的解决方法
-
关于Cookie中带有中文乱码报错的问题解决
-
Three.js使用THREE.TextGeometry创建三维文本中文乱码的问题如何解决?
-
解决asp.net core在输出中文时乱码的问题
-
解决3.01版的jquery.form.js中文乱码问题的解决方法
-
Python遍历zip文件输出名称时出现乱码问题的解决方法