温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java使用post请求时出现乱码怎么解决

发布时间:2020-06-25 11:59:23 来源:亿速云 阅读:363 作者:Leah 栏目:编程语言

java使用post请求时出现乱码怎么解决?针对这个问题,这篇文章给出了相对应的分析和解答,希望能帮助更多想解决这个问题的朋友找到更加简单易行的办法。

Java WEB项目中,中文乱码是一个经常遇到而又非常头痛的问题,其中最容易出现乱码的环节就是在浏览器向服务器发送请求的过程。下边就这一问题介绍解决方法,希望会帮助到大家。以下转码都是以UTF-8为参考,若为其他编码格式可自行修改。

一、Response乱码

(1)设置服务器端的编码:response.setCharacterEncoding("UTF-8");

上边此设置一定要再response.getWriter()方法之前;

(2)通知浏览器发送的数据格式:response.setContentType("text/html;charset=UTF-8");

(3)浏览器使用UTF-8进行解码。

二、Request乱码

1.Post方式提交,参数存在于请求体中,只需要进行此设置即可:

request.setCharacterEncoding("UTF-8");

2.Get方式提交,参数会拼接在URI地址后边,服务器默认按照iso8859-1进行解码,有两种解决方法:

(1).在程序中修改接收到的请求编码(此方法每次请求都需要转码,不推荐)

String str = request.getParameter("s");
str = new String(str.getBytes("iso8859-1"),"UTF-8")

(2)在Tomcat安装文件夹中找到server.xml文件,查找<Connector />标签进行修改(此方法一劳永逸)

<Connector URIEncoding="UTF-8" 
        port="8080"   maxHttpHeaderSize="8192"
        maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
        connectionTimeout="20000" disableUploadTimeout="true" />

只需在此标签中增加 URIEncoding="UTF-8" ,然后重启tomcat即可。

关于java使用post请求时出现乱码怎么解决就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI