标签:seevlet 乱码 utf-8 gbk request.setcharacter
平时coding时,经常遇到一些乱码问题,现在总结一下在使用Servlet时遇到的一些乱码问题,简单的解决办法两种
第一种简单处理方式
在servlet中数据的处理是通过request和response进行处理的,提交数据有两种方式:post+get
①post提交方式--只要事先设置request.setCharacterEncoding("UTF-8");-------注:只对POS提交有效
②get提交方式--通过ISO8859-1得到客户端发送的数据,再转成UTF-8类型。(或者其他类型,gbk,gb2312)
String username = request.getParameter("username"); username = new String (username.getBytes("ISO8859-1","UTF-8"));
从上面的两种方法可以看出如果是GET提交方式,要做的处理就相当麻烦,所以在提交方式设置时,建议大家使用POST,这也是POST的好处之一。但是还有一种是通过超链接从客户端提交的中文处理,服务端只能用GET处理方式。
在服务端响应时,通过response响应时,对于中文乱码问题,也必须进行处理。
通过response.setCharacterEncoding("UTF-8"); //以“UTF-8”的方式响应输出
response.setContentType("text/html;charset=UTF-8"); //并且告诉浏览器用“UTF-8”的方式打开。
第二种过滤器方式处理乱码问题,原理及代码后续补上~
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:seevlet 乱码 utf-8 gbk request.setcharacter
原文地址:http://blog.csdn.net/jeofey/article/details/46743813