解决请求参数中文乱码(post和get)

 

目录

前言必读

概述

一、Post请求乱码问题的解决

二、get乱码问题的解决

三、其他知识 


前言必读

读者手册(必读)_云边的快乐猫的博客-CSDN博客 

概述

在我们发送请求参数输入中文的时候,可能会出现乱码问题,因为我们输入的中文,浏览器是解读不了的,要转成url编码才能发送到服务器tomacat,tomcat(默认不可更改:ISO -8859-1)收到后又进行url解码才能正常显示。

那我们要添加编码解码这些给这些数据进行转码处理。

一、Post请求乱码问题的解决

这个代码要放在请求代码的上面才可以

        //解决post中文乱码问题(设置字符输入流的乱码问题)
        request.setCharacterEncoding("UTF-8");

 

二、get乱码问题的解决

出现乱码的原因就是编码不一致,解决的思想就是把任意码(乱码)都转换为字节码,再把字节码转换为我们能读懂的UTF-8就好了。

username是出现乱码的相关代码

        //username是出现乱码的相关代码
        username = new String(username.getBytes(StandardCharsets.ISO_8859_1),StandardCharsets.UTF_8);
        System.out.println("解决乱码后"+username);

三、其他知识 

PS:这个代码给post使用有效果,同样给get用也是一样的。因为都是把乱码转为字节码,再转为UTF-8。

其他知识:如果遇到了乱码???,可以尝试把request.setCharacterEncoding("UTF-8");这个注释或者删除试试看

你可能感兴趣的:(JavaWeb,get乱码,post乱码,servlet,java编码转换,java请求参数乱码)