响应时会产生乱码的原因是在 HTTP 协议中规定,默认响应体的字符编码为ISO-8859-1。所以,若要解决乱码问题,就需要修改响应体的默认编码。一般情况下,有两种方式可以修改:

方法一:HttpServletResponse 的 setCharacterEncoding(“utf-8”)方法,将编码修改为utf-8,然后再通过setHead(“Content-type”,”text/html;charset=UTF-8″);方法告诉客户端浏览器的编码方式。
代码:

 response.setCharacterEncoding("UTF-8");
 response.setHead("Content-type","text/html;charset=UTF-8");

 

方法二:为了简便操作,开发者可以直接使用HttpServletResponse 的 setContentType(“text/html;charset=utf-8”)方法,告诉浏览器的编码方式,该方法相当于方法一种的两条代码。
代码:

response. setContentType("text/html;charset=UTF-8");

 

注意:设置响应编码时必须在 PrintWriter 对象产生之前先设置,否则将不起作用。

posted on 2018-12-19 15:18  逛园子$$$  阅读(593)  评论(0编辑  收藏  举报