请教一个关于jsp的编码问题

babyjinwen 2011-03-27 01:30:06
我在jsp页面中输入中文字符,传到servlet中是乱码,是不是编码的问题,怎么解决啊?
...全文
118 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Horrison 2011-03-29
  • 打赏
  • 举报
回复

request.setCharacterEncoding("utf-8");
//在你的servlet最上边加上这句
  • 打赏
  • 举报
回复
配置一个filter
设置request和response的编码方式都为utf-8
jsp里面也是、
然后修改tomcat里面的server.xml
具体怎么修改自己百度下、我忘了
luoye_teng 2011-03-28
  • 打赏
  • 举报
回复
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");

放在servlet方法里的最前头试试
navy_ji 2011-03-28
  • 打赏
  • 举报
回复
中文乱码有很多种情况,解决的方法也不尽相同。根据具体情况而定,可以用以下方法测试一下。看哪种好用
1。首先要保证编码方式一致,很多情况是因为编码方式不统一,造成乱码。如:UTF-8为例。
在JSP页面中头部要有<%@ page language="java" pageEncoding="UTF-8"%>
在head中间加上<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
这个可以确保页面编码方式是UTF-8
其次, 将你的工程也都设置成UTF-8的编码方式,Windows -- Preferences -- General -- Content Type中可以设置,但是这是IDE级别的,建立的所有项目都会按照Content Type中的编码显示。
也可以在myeclipse中,鼠标右击工程 -- Properties -- Resource -- Text file encoding 在other中选择utf-8,这样确保每一个类同样也是UTF-8,
在java 类中,当你要获取页面的参数时,通过
String str = request.getParameter( "name ");
String value = new String(str.getBytes( "ISO-8859-1"), "UTF-8");
记住必须用这种标准的格式,有时用
String value = new String(str.getBytes( ), "UTF-8");这样有时不好使。
2。有时还要看你用是服务器,如TOMCAT,有时需要在TOMCAT/CONF/SERVER.XML中的修改
<Connector port="8088" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
URIEncoding="UTF-8"加上这个。有时这个还得去掉,因为有时是类中可能已经编码方式转过了。

留下买路财 2011-03-27
  • 打赏
  • 举报
回复
要是只针对一个servlet的话就在servlet的dopost或doget方法添加request.setCharacterEncoding("utf-8");这句话
要是对所有的servlet要么每个都加,要么用Filter过滤器,不过建议你用过滤器
bcsflilong 2011-03-27
  • 打赏
  • 举报
回复
就是那个问题 你作一个Filter 防止一下这样类似的问题
shanxmxj 2011-03-27
  • 打赏
  • 举报
回复
在页面上进行编码String a = java.net.URLEncoder.encode("中文")
到后台解码:java.net.URLDecoder.decode(request.getParameter("a"), "UTF-8");
BUG胡汉三 2011-03-27
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lujun0527 的回复:]
要是只针对一个servlet的话就在servlet的dopost或doget方法添加request.setCharacterEncoding("utf-8");这句话
要是对所有的servlet要么每个都加,要么用Filter过滤器,不过建议你用过滤器
[/Quote]
就用这个~~~当然、楼主需要注意的是、页面与Servlet的编码方式尽量一致、如果页面使用UTF那么Servlet或者你的Filter中也设置成UTF。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧