请问在weblogic中如何解决录入数据库的中文问题????

baichuan168 2002-02-07 11:09:18
数据库用的是db2,服务器是weblogic,当数据加入数据库是,在数据库中存的居然是乱码!!!
各位老大,帮个忙吗,小弟有高分送呕!
...全文
17 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
baichuan168 2002-02-07
准确的说和weblogic有关系吗?
回复
gdsean 2002-02-07

String strOut = new String(strIn.getBytes("ISO8859_1"),"gb2312");
回复
baichuan168 2002-02-07
这么说是更程序有关了,和系统有关吗??
回复
gdsean 2002-02-07
抄了一段东西,不过好象不太对题,这样吧,你写数据库的时候先
把字符串转成GBK码试试:
String strOut = new String(strIn.getBytes("8859_1"),"gb2312");
回复
gdsean 2002-02-07
在JDBC Driver里,有些Driver会对将插入数据库的和从数据库中读出的中文自动地转换成Unicode,而有些不会,如果Driver做过转换而系统又再做一次,就会出现问题,也就是常见的??,这时,我们需要的就是在不同的平台下根据不同的情况去将数据库做的不需要的转换抵消。举一个简单例子:系统是西文平台,数据库的Driver做过GBK到Unicode的转换,这时候,我们程序中的中文字串在javac后仍然是GBK码,而从数据库中读进的中文已经做过转换,也就是变成了Unicode码,当我们用java去运行时就会将中文的Unicode转换成ISO8859_1,自然要出错。这时,我们就需要自己将从数据库中读出的数据做一个Unicode到GBK的转换,因此就可以正常输出了。

回复
baichuan168 2002-02-07
用的是jdbc2.0,国标码,nt系统。
回复
wolfsquare 2002-02-07
请说明数据库用的编码,什么jdbc驱动,jdbc 连接url,以及什么系统,什么工具查看是乱码,搞不好和字体也有关系。这些全是有关的。
回复
baichuan168 2002-02-07
这个到底是服务器的问题,还是程序的问题???
回复
baichuan168 2002-02-07
to gdsean(摇滚java):
我知道数据库连接和weblogic,我说的是乱码更weblogic有关吗?
回复
gdsean 2002-02-07
jdbc连接数据库,跟weblogic没有关系
回复
ahbill 2002-02-07
从数据库中取中文作如下转换:
tmpStr=new String(tmpStr.getBytes("ISO-8859-1"),"GBK");
写中文回数据库作如下转换:
tmpStr=new String(tmpStr.getBytes("GBK"),"ISO-8859-1");
回复
相关推荐
发帖
非技术区
创建于2007-09-28

2.3w+

社区成员

Java 非技术区
申请成为版主
帖子事件
创建了帖子
2002-02-07 11:09
社区公告
暂无公告