web项目:解决后台获取前端传的参数乱码问题,和后台发送数据乱码问题

获取的中文参数乱码:

  一, get方式传参,中文乱码
                   修改tomcat中的配置server.xml
                 【Servers项目中去找server.xml文件,然后修改】
                  在修改端口的标签Connector中添加属性URIEncoding="XXX"(一般情况下,要么GBK,要么UTF-8)
                <Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8989" protocol="HTTP/1.1" redirectPort="8443"/>
        【注意】:
            正常情况下,要在eclipse中修改server.xml文件,这个文件会覆盖tomcat中的server.xml。
            但是有的版本的eclipse不按套路出牌,它只在当下修改server.xml有用,等我们再次运行tomcat,

            则用tomcat中server.xml   替换eclipse中的server.xml,所以要注意。
          

二,post方式传参,乱码

获取参数【之前】,先设置一下request中的编码:
           request.setCharacterEncoding("UTF-8")

回写数据乱码

【默认】情况下浏览器会采用【中文简体(GBK)】来解析响应正文
        我们可以在servlet设置【响应头部】,来通知浏览器本次响应正文中的内容编码是什么
        response.setContentType("text/html;charset=utf-8");
        
        在response获得out输出流之前,我们还需要设置一下这个输出流是用什么编码来输入内容
        response.setCharacterEncoding("UTF-8");

    注意:响应内容的整体格式(格式的控制由tomcat负责)
            1.响应状态行【tomcat自动处理】
            2.消息报头/响应头部【用户设置】
            3.\r\n
            4.响应正文【tomcat帮我们自动填充】

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值