概述
@WebServlet(urlPatterns = "/Requestdemo03")
public class Requestdemo03 extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request,response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
/*
* 使用post方式不乱吗,get方式就会出现乱码
*
原因:编码和解码方式不一致
*
tomcat版本:8.5及以上版本
*
get请求方式,request对象使用的字符集默认为utf-8
*
post请求方式:request对象使用的编码方式为ISO8859-1
*
*
解决:设置request的编码方式为utf-8
requet.setCharacterEncoding("utf-8");
*
*
*
tomcat版本:8.5以下版本(了解)
没有设置request的字符集
GET:??????
POST:??????
request.setCharacterEncoding("utf-8"); 只针对post方式有效
GET:??????
POST:你好
解决:
request对象默认字符集ISO8859-1
1.String类中的方法:可以把获取到的ISO8859-1编码的字符串转换为字节数组
byte[] getBytes(Charset charset) 使用指定的字符集把字符串转换为字节数组
2.String类的构造方法:把字节输出以UTF-8的方式解码为字符串
String(byte[] bytes, String charsetName) 把字节数组,根据字符集转换字符串
*
* */
request.setCharacterEncoding("utf-8");
String username = request.getParameter("username");
String password = request.getParameter("password");
System.out.println(username+"----"+password);
}
}
最后
以上就是义气唇彩为你收集整理的表单提交post方式出现乱码,get方式提交不乱码的全部内容,希望文章能够帮你解决表单提交post方式出现乱码,get方式提交不乱码所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复