站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Eclipse 专题急求:Eclipse3.1.2+MyEclipse4.1.1+Tomcat5.5.17中Servlet返回汉字都是???如何解决?

急求:Eclipse3.1.2+MyEclipse4.1.1+Tomcat5.5.17中Servlet返回汉字都是???如何解决?

摘要: 急求:Eclipse3.1.2+MyEclipse4.1.1+Tomcat5.5.17中Servlet返回汉字都是???如何解决?


在Servlet中写了声明返回数据编码格式的语句:response.setCharacterEncoding("GBK");
在JSP页面中也有相关指令:
<%@ page language="java" contentType="text/html; charset=GBK" import="java.sql.*" pageEncoding="GBK"%>
可汉字都是???(多少个汉字多少个“?”)
Servlet中要返回的汉字是SQL Server 2005数据库中查询来的,SQL Server 2005的默认语言是Simplified Chinese,字体是中文(中国),排序规则也是Chinese_PRC_CI_AS,不知道是什么编码格式,我用select * from tablename for xml auto返回xml文档,希望Servlet传给JSP页面,可是在浏览器里面不管是通过JSP访问还是直接访问Servlet都把给我的中文显示成???,在MyEclipse的控制台却可以显示中文(通过System.out.println())
求高手解决


你用的是eclipse自带web浏览器吧,建议用tomcat吧



不对啊,你是用是tomcat啊,那一般不会吧,或者你做一下国际化问题或者再把代码转换一下吧,你可以查看别人写的工程里面的处理,在网上下载源代码



<%response.setContentType("text/html");%>或
<%@ page contentType="text/html;charset=gb2312" %>
<%request.setCharacterEncoding("gb2312");%>
在你页面加上试试



如果还是不行,只有用String s = new String("你的记录".getBytes("iso-8859-1"), "2312");
逐个解决了


在Web.xml里设置页面编码,如下所示,放在标签下面就可以了



Special property group for JSP Configuration JSP example.
JSPConfiguration
*.jsp
true
GBK
<scripting-invalid>false</scripting-invalid>



Special property group for JSP Configuration JSP example.
JSPConfiguration
*.htm
true
GBK
<scripting-invalid>false</scripting-invalid>






呵呵,解决了,因为有接受请求,所以也要设置请求的编码格式,正如terrysandy(起航邀月)所说,大家都辛苦了,大热天的,谢谢大家了。


↑返回目录
前一篇: 在哪里设置参数
后一篇: 菜鸟请教,Eclipse 3.1.2 下面怎样安装VE插件,我试了几次都不行啊!多谢!