当java直接采用response想浏览器输出时,《
Web中文乱码——1、SpringMVC+Jetty编解码基础》一文中讲过,java需要告诉浏览器,response采用的字符集。比如:
response.setCharacterEncoding("utf-8");
但即使如此,我还是发现会有乱码
response.setCharacterEncoding("utf-8");
ServletOutputStream outputStream = response.getOutputStream();
outputStream.println("中文");
最后发现,原因是ServletOutputStream不会按照声明的方式做转码,解决方法就是弃用response.getOutputStream,采用response.getWriter()