| |
开发构架:hibernate2.1.6+spring1.2.2+sturts1.1; 数据库:mysql4.024-nt; 容器:tomcat5.0.28; 开发工具:jbuilderx、eclipse3.0 os:window200 就在开发的时候问题出现了:在jbx下开发,用的tomcat 是自带的4.06,启动后测试中文没有任何问题(而且在jsp页面里面也没有加“ <%@ page contenttype="text/html;charset=gb2312" %> ”),中文的存取都没有乱码现象; 这样就把jbx下开发的移在eclipse3.0下,用的tomcat是下载的5.0.28,启动tomcat测试发现,insert 数据是没乱码,但存数据库里面select数据时,中文时乱码的!这里很多人会想到应该不会的!其实我也是这么想的,但事实就是这样,我查可资料如这:http://www.cnblogs.com/josson/archive/2005/03/16/119619.aspx 说的不错,我就按照这样作了,加了,但是还是不行,我改为:jdbc:mysql://localhost/hibstruts?useunicode=true&characterencoding=gb2312;而且filter的配置也该成了gb2312;还有对每个jsp页面也加了<%@ page contenttype="text/html;charset=gb2312" %> ,最后测试了一上午还是不行;我只能用了 str=row[1].tostring(); //取出中文 system.out.println("________=========tname1 :"+str); dbbyte1 = str.getbytes("iso-8859-1"); //转换字符集 str = new string(dbbyte1); system.out.println("________=========tname2 :"+str); //正常的中文 不会吧,天哪!这样处理中文会把我累死啊! 下午,我就从比较低级的问题入手想了!是不是问题没有这么复杂?... ... 原来代码就换了个tomcat,竟然如此的问题,是不是tomcat的问题,不会吧,应该5.0.28版本不比4.0.6 低级吧!哦,是不是中文问题支持有所改变那!对,把在eclipse下开发的tomcat换为jbx自带的4.0.6试试! 马上换用tomcat4.0.6,所以的中文问题立即消失了!md,这么让人大干的问题,竟然这么解决的! 唉,不知自己的思维逻辑问题,还是tomcat的发展逻辑问题啊!看来以后还得从实践入手,不要相信技术的发展逻辑。
|
|