Servlet处理请求参数中文乱码问题

资料来源于:B站尚硅谷JavaWeb教程(全新技术栈,全程实战) ,本人才疏学浅,记录笔记以供日后回顾
视频链接

获取的请求参数有中文乱码问题

设置编码
    tomcat8之前,设置编码:
      1)get请求方式:
        //get方式目前不需要设置编码(基于tomcat8)
        //如果是get请求发送的中文数据,转码稍微有点麻烦(tomcat8之前)
        String fname = request.getParameter("fname");
        //1.将字符串打散成字节数组
        byte[] bytes = fname.getBytes("ISO-8859-1");
        //2.将字节数组按照设定的编码重新组装成字符串
        fname = new String(bytes,"UTF-8");
      2)post请求方式:
        request.setCharacterEncoding("UTF-8");
    tomcat8开始,设置编码,只需要针对post方式
        request.setCharacterEncoding("UTF-8");
    注意:
        需要注意的是,设置编码(post)这一句代码必须在所有的获取参数动作之前

Tomcat控制台有乱码

可在下图位置添加上,-Dfile.encoding=UTF-8

posted @ 2023-02-28 15:41  飞哥传书  阅读(35)  评论(0)    收藏  举报