新闻正文

发现Hibernate中文问题又一解决方法

来源:JAVA天堂  JAVA学习者  2007-4-29 02:20:30 网友评论 0 条 字体:[ ] ~我要投稿!

  开发构架: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的发展逻辑问题啊!看来以后还得从实践入手,不要相信技术的发展逻辑。
  


收藏到ViVi   收藏此页到365Key
上一篇:怎样利用Hibernate开发Blog实例分析
下一篇:Java开源项目Hibernate快速入门
用户名:新注册) 密码: 匿名评论 [所有评论]
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
本栏搜索
  • Google
   网站首页 -  网站地图 -  技术学习 -  网站投稿 -  帮助中心
Copyright 2003-2008 www.javah.net All Rights Reserved
2008 如果你喜欢本站 请收藏本站 并推荐给你的朋友一起分享