美文网首页
10.请求中文乱码问题

10.请求中文乱码问题

作者: 若愚同学 | 来源:发表于2018-06-19 22:47 被阅读0次

Tomcat接收请求的时候,默认使用的IOS-8859-1编码,而该编码只占一个字节,不支持中文(两个字节)

解决方案:

1:对乱码使用ISO-8859-1解码--->byte数组.

2:对byte数组重新使用UTF-8编码

示例代码:
//1.使用ISO-8859-1解码,恢复为二进制
byte[] data = username.getBytes("ISO-8859-1");
//2.重新使用UTF-8编码
username = newString(data,"UTF-8");

但是该中方式在表单参数过多的时候就会很麻烦,我们推荐使用以下方式.

解决方案:
POST方式:

request.setCharacterEncoding("UTF-8");//设置请求的编码方式.

注意:必须在获取第一个参数之前设置,只对POST方式有效.

GET方式:

重新设置Tomcat的编码方式,修改Tomcat的配置文件.Tomcat根/conf/server.xml(修改端口行一行).

注意:该方式只对于GET方式有效.

图片1.png

相关文章

网友评论

      本文标题:10.请求中文乱码问题

      本文链接:https://www.haomeiwen.com/subject/ivgzeftx.html