Request请求乱码解决

package com.mage.hsr;
import java.io.IOException;

import javax.servlet.ServletException;
/*
 * 请求乱码解决:根据提交方式分为get和post两种解决方案
 * 乱码原因,客户端与服务端字符集不统一
 * 使用document.charset可得到浏览器的字符集
 * get:	参数在请求行中,服务端默认使用ISO-8859-1字符集
 * 1,在Tomcat8及以上版本中中文可能不会乱码
 * 2,在Tomcat7及以下版本中,中文可能乱码
 * 解决方法:new String(uname.getBytes("ISO-8859-1"),"UTF-8")
 * 
 * post:参数在请求体中,使用页面编码
 * 1,在Tomcat8及以上版本中中文乱码		
 * 2,在Tomcat7及以下版本中中文乱码	
 * 解决方法:设置服务器默认解码字符集
 * req.setCharacterEncoding("UTF-8")
 * 此方法针对请求体有效,故无法对get使用,代码放在request对象之前
 * */
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Test012 extends HttpServlet{
	@Override
	protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//		//测试get
//		String uname = req.getParameter("uname");
//		System.out.println("uname:"+uname);
//		//结果为uname:张三,原因是使用的是Tomcat8.5的版本,所有正常显示中文
		
		//测试post
		
//		String uname = req.getParameter("uname");
//		System.out.println("uname:"+uname);
//		//结果为:uname:å¼ ä¸
		
		//设置服务器默认字符集
		req.setCharacterEncoding("UTF-8");
		String uname = req.getParameter("uname");
		System.out.println("uname:"+uname);
		//结果为:uname:张三,正常显示中文
	}
	
	
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值