response字符编码解决中文乱码

response.setContentType("text/html;charset=UTF-8");
有二层含义:
1_服务器按照UTF-8的方式编码
2_浏览器按照UTF-8的方式解码
以上只针对非英文和数字


当你想输出中文字符串时,可以采用字符或字节方式:
1_字符
   response.setContextType("text/html;cahrset=UTF-8");//这句话有二层作用
   response.getWriter().write("哈哈"); 
2_字节
   》response.getOutputStream().write("哈哈".getBytes());//服务器按GB2312编码,浏览器按GB2312解码
    
   》response.getOutputStream().write("哈哈".getBytes("UTF-8"))//服务器按UTF-8编码,浏览器按GB2312解码


   》response.setContextType("text/html;cahrset=UTF-8");浏览器按UTF-8解码
     response.getOutputStream().write("哈哈".getBytes("UTF-8"))//服务器按UTF-8编码
项目中,如果输出多媒体数据用字节,例如:图片
        如果输出文字的话,用字符


如果输出字符串的话,原样输出;
如果输出数字的话,要转换成字符串,才能输出。
如果你就想输出数字的话,将数字转成字符串就可以了

你可能感兴趣的:(javaweb基础学习)