一、编码基础
这里主要理解字符集与字符编码问题。
字符集就像一个字库,类似英文,中文,日文等,只是一个库;
字符编码就像一个映射关系,将字符集映射为一个个数用计算机存储;如utf,注意utf-8,utf-6等都是一个字符集,不同的字符编码
二、响应编码
一般tomcat服务器默认解码ios-8859-1,从tomcat8以后默认utf-8不用再修改,浏览器默认解码是gbk,这里所以我们一般都自己设置,这样比较好控制。
这里response.setHeader("content-type", "text/html;charset=utf-8");有两个作用:1返回数据按照utf-8编码;2设置contenttype告知浏览器编码格式,然后浏览器就会用相应的格式解码,从而不会出现乱码
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setHeader("content-type", "text/html;charset=utf-8");
//request.setCharacterEncoding("utf-8");
response.getWriter().println("哈哈哈");
}