论坛首页 Java企业应用论坛

西文oracle数据库的jdbc访问问题

浏览 3437 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-12-13  
现在的环境是客户要求数据库必须使用西文字符集来存储中文。 经过实验,用jdbc直接存取都是乱码,需要手工转一次码,而且查询过发现oracle的jdbc是没法指定字符集来避免这种手工转码。这样对应用开发带来问题。
1. 如果使用jsp做view, 不做任何转换,输入输出中文正常,实际是浏览器帮你转了,缺点是中间数据还是乱码,包括做单元测试等都会影响。
2. 本来计划里是不打算使用jsp的,而用wicket或者tapestry的,但是这两者在这种情况都不能正确输出中文,还是需要手工转码。
3. 如果手工转码,代码很难写我考虑是对oracle的jdbc做个补丁,强制修改转码。

各位是否还有些什么好的建议可以提提看? 我看oracle的jdbc文档里面提到在92.0x的一个版本以后oci方式的很可能已经可以避免这个问题,但是我现在不一定能使用到这个版本,因为我实验发现oci对版本号很敏感。
   发表时间:2006-12-13  
hellotoy 写道
现在的环境是客户要求数据库必须使用西文字符集来存储中文。 经过实验,用jdbc直接存取都是乱码,需要手工转一次码,而且查询过发现oracle的jdbc是没法指定字符集来避免这种手工转码。这样对应用开发带来问题。
1. 如果使用jsp做view, 不做任何转换,输入输出中文正常,实际是浏览器帮你转了,缺点是中间数据还是乱码,包括做单元测试等都会影响。
2. 本来计划里是不打算使用jsp的,而用wicket或者tapestry的,但是这两者在这种情况都不能正确输出中文,还是需要手工转码。
3. 如果手工转码,代码很难写我考虑是对oracle的jdbc做个补丁,强制修改转码。

各位是否还有些什么好的建议可以提提看? 我看oracle的jdbc文档里面提到在92.0x的一个版本以后oci方式的很可能已经可以避免这个问题,但是我现在不一定能使用到这个版本,因为我实验发现oci对版本号很敏感。

没人有同样情况? 最后我弄个proxy方式的jdbc转换完事,郁闷,白费了一天时间查oracle的文档。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics