首页 > 代码库 > Servlet------>request和response控制编码乱码问题

Servlet------>request和response控制编码乱码问题

我在request篇和response都有提到,觉得会忘记,所以从新整理一下

request细节四----->通过request控制编码问题

第一种方式是通过设置------>request.setCharacterEncoding("UTF-8")和URLEncoder.encode(username, "UTF-8");//只有post生效

第二种方式是通过设置------>(post,get通用的情况)

String username=new String(request.getParameter("username").getBytes("iso8859-1"),"UTF-8");//反向查找,get/post都可以

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//        request.setCharacterEncoding("UTF-8");//只有post生效
        String username=new String(request.getParameter("username").getBytes("iso8859-1"),"UTF-8");
        //反向查找,get/post都可以
        //URLEncoder.encode(username, "UTF-8");
        System.out.println(username);
    }

 在浏览器头设置好如下

<meta charset="UTF-8">

 图片是原理:

技术分享

第三种方式是通过设置------>在uri里带参数的情况,可以在tomcat server.xml里配置

技术分享

第四种方式是通过设置------>(post,get通用的情况)

首先servlet里配置:

技术分享

然后:server.xml里配置:

技术分享

 

 

 

以上是request编码解决办法,然后来讲下response中乱码解决:

 

 

 

 

 


 

Servlet------>request和response控制编码乱码问题