黑马程序员技术交流社区

标题: 关于Servlet编码的小问题! [打印本页]

作者: 月生春    时间: 2013-12-21 10:18
标题: 关于Servlet编码的小问题!
写了一个hello.html ,提交方式是GET.在服务器接受的Servlet程序中我设置的编码方式是 request.setCharacterEncoding("UTF-8"); 为什么提交后在TOMCAT服务器中汉字显示的是乱码.
我的理解是,服务器对提交过来的表单会以UTF-8的编码方式去解码.不是这样的吗,对这个编码都搞糊涂了,求详解!
作者: 狂风逆流    时间: 2013-12-21 10:20
浏览器的解析编码是UTF8吗,注意看看
作者: ~IN_HAND~    时间: 2013-12-21 10:32
在Servlet中,你再加一句response.setContentType("text/html;charset=utf-8");试试
作者: 恩恩    时间: 2013-12-21 17:35
首先你看下你的html的页面编码是什么,如果不是UTF-8那么就会出错,还有就是你在设置这个字符变的时候好像有一点小问题,你最好是写成response.setContentType("text/html, UTF-8);
还有一种比较好的办法,就是你最好在你的web project里面写一个过滤器,专门用来设置汉字的编码,把这个过滤器配置在web.xml的最上面,这样就可以不用担心汉字乱码问题了。

不会写过滤器可以专门来问我,给我留言,我给你讲。很简单。

作者: Crist    时间: 2013-12-21 18:30
同学你 要先告诉 浏览器 你要用什么编码啊
response.setContentType("text/html;charset=UTF-8");
加上这个就没问题了   
作者: 75100313    时间: 2013-12-22 08:46
本帖最后由 75100313 于 2013-12-22 08:47 编辑

乱码 把request 和response 设置都写上  还不行 弄个过滤器

过滤器很简单  几句话  web.xml 一配置就行 跟servlet  配置差不多  度娘





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2