请求参数的中文乱码问题总结

本文探讨了在处理HTTP GET和POST请求时遇到乱码问题的原因,并提供了两种解决方案:通过在doGet方法中添加`request.setCharacterEncoding(UTF-8)`语句或修改`server.xml`文件中的URI编码设置来解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
首先实现这样一个页面

 

在doGet和doPost中写入:

输出的结果:
              doGet : 乱码
               doPost : 乱码
解决方式:
1、添加语句

结果为: doGet :  乱码   
                 doPsot :  正确
由此可以看出:request.setCharacterEncoding("UTF-8");这句在doGet方法中并不适用;
修改方案:修改doget方法为:
       
结果为:  doGet : 正确
                 doPost : 正确

 

2、修改conf\server.xml文件中的
 <Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
                  redirectPort="8443"   />
  第一种:在末尾加上URIEncoding="UTF-8" ,然后运行检测
    结果:
                    doGet : 正确
                     doPost : 乱码
      由此可知这种方法不行

 

  第二种:在末尾加上useBodyEncodingForURI="true"
                       并在doGet()方法和doPost()方法中添加

  结果:  
         doGet :正确
          doPost: 正确

 

 

 

转载河软优快云乐知学院-李克
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值