码迷,mamicode.com
首页 > 其他好文 > 详细

处理servlet中中文乱码问题

时间:2015-07-03 19:20:22      阅读:248      评论:0      收藏:0      [点我收藏+]

标签: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”的方式打开。

第二种过滤器方式处理乱码问题,原理及代码后续补上~

版权声明:本文为博主原创文章,未经博主允许不得转载。

处理servlet中中文乱码问题

标签:seevlet   乱码   utf-8   gbk   request.setcharacter   

原文地址:http://blog.csdn.net/jeofey/article/details/46743813

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!