赞Firefox,赞FireBug

今天在折腾一个Ajax的东西,结构大概是:MySQL数据库->用Axis搭的WebService->前端Ajax应用。应用服务器是tomcat。
由于数据库里面已经用了gbk的编码,而且WebService的服务端代码也写好了,不愿意再改成utf8的,所以整个系统就走了gbk编码的路线。
提交表单的乱码比较好办,getBytes就行了。
Ajax提交参数的时候很是遇到了一些麻烦,用JS的escape之类的方法总是莫名其妙的出错,不知道是不是我自己手误了。最后用Java的URLEncoder先encode了中文参数,接收端new String(getBytes("ISO-8859-1"),"gbk");
在Ajax接受服务端传来的gbk编码的数据的时候遇到了乱码。查了一下,应该是httprequest对象在将 responseBody decode成responseText的时候默认是按照utf-8的方法来进行decode的,简单的方法是在服务端设置response的header,网上搜到的解决方法一般是说response.setHeader("Charset","GB2312"),但是我用了之后没有效果,感到异常迷茫。。
这时候,伟大的Firefox和FireBug帮助了我。。。。FireBug0.4.1版本具有显示XMLHttpRequest的信息的功能,我用它看了一下,response的header和body都显示出来了,而header里面赫然有一行“Content-Type=text/html;charset=iso-8859-1",干。。。于是我把那句setHeader改成了response.setHeader("Content-Type","text/html;charset=gbk");
问题解决。。。

这里再次向Firefox和FireBug致敬,真是web开发者的福音!

tomcat GET方法的中文乱码问题

原贴见此

常见的表单提交,和数据库连接的中文乱码问题很多地方都有提及。
对于GET方法的中文乱码,其实是URI编码的问题,在tomcat5.0.x里面需要在server.xml中配置一个Connector的参数,把URIEncoding设为UTF-8。
具体可以见上面那个帖子

eclipse3.0.0部分中文不能显示问题

发信人: broom9 (  ), 信区: eclipse
标  题: eclipse3.0部分中文不能显示问题
发信站: 水木社区 (Thu Dec 15 09:19:35 2005), 站内

        已经解决了上来发一下
        eclipse3.0.0,winxp en pro,编辑中文是一种比较奇怪的字体,有部分字显示不出来
        网上查到的大部分解决方法是把encoding改成GBK,改了之后不行,那种大概是对所有汉字都不能识别的问题
        后来在eclipse启动的时候加上参数 -nl “zh-cn”解决
        eclipse3.1默认就能正常显示汉字,其他版本没有测试

※ 来源:·水木社区 newsmth.net·[FROM: 59.66.74.196]

另:我用eclipse3.0而不用3.1是为了装Together。。。鄙视我吧,啊