由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Java版 - hibernate一个国际化保存unicode value的问题
相关主题
谁给推荐一个简单的ORM吧网站国际化的问题
hibernate能不能orm没有主键的表格hibernate和ejb3
spring到底有什么好处?请问hibernate这个功能如何实现?
Java GC 为什么不能自动释放jdbc connection?Hibernate question
java后端开发JDBC
About Hibernatefind all tables used in a hibernate/jdbc project?
搞不懂为什么hibernate为什么这么流行?jdbc + oracle connection pooling问题
Struts基本思路请教[求助]实在不明白transaction,ejb这些概念
相关话题的讨论汇总
话题: hibernate话题: unicode话题: nvarchar话题: 保存话题: 国际化
进入Java版参与讨论
1 (共1页)
l****2
发帖数: 41
1
一个stored precedure,input parameters are int, nvarchar, date
通过hibernate做insert后,发现数据库保存的中文字符都变成了junk。觉得问题主要
在nvarchar上,hibernate好像不认这种datatype,要不就是microsoft的jdbc driver
不支持这种类型。
不知道这里谁做过国际化的项目?有人遇见过类似的问题吗?
m******t
发帖数: 2416
2
I doubt it's hibernate. By the time it gets into hibernate, it's all unicode
already. How is the encoding set in your sql server? Are your chinese
characters in gb2321 or utf-8?
l****2
发帖数: 41
3
我不知道是哪儿的问题?我在sql server上面run过一些sql query来测试它支持不支持
unicode,比如 insert into tablename Values ( 1, 'aa', N'中文字符'),我可以看
到这个'中文字符'能被正确保存下来。另外我还测试过繁体,日文,德文,etc,都没问
题,所以我想问题应该不在sql server的设置上。
我的application 用Spring的jdbcTemplate来call一个stored procedure,用
sqlparametersource的addValue来设置参数,可.addValue("paraName", paraValue,
Types.NVARCHAR)报错,说我的microsoft jdbc driver不支持NVARCHAR。可我的driver
是支持的。
我也想过用别的方法来impl这个,可找不到支持NVARCHAR的method。

unicode

【在 m******t 的大作中提到】
: I doubt it's hibernate. By the time it gets into hibernate, it's all unicode
: already. How is the encoding set in your sql server? Are your chinese
: characters in gb2321 or utf-8?

g*****g
发帖数: 34805
4
You should do a simple test, just do a write and read, set debug
point and check where it's screwed up. It's often somewhere in your
application instead.

driver

【在 l****2 的大作中提到】
: 我不知道是哪儿的问题?我在sql server上面run过一些sql query来测试它支持不支持
: unicode,比如 insert into tablename Values ( 1, 'aa', N'中文字符'),我可以看
: 到这个'中文字符'能被正确保存下来。另外我还测试过繁体,日文,德文,etc,都没问
: 题,所以我想问题应该不在sql server的设置上。
: 我的application 用Spring的jdbcTemplate来call一个stored procedure,用
: sqlparametersource的addValue来设置参数,可.addValue("paraName", paraValue,
: Types.NVARCHAR)报错,说我的microsoft jdbc driver不支持NVARCHAR。可我的driver
: 是支持的。
: 我也想过用别的方法来impl这个,可找不到支持NVARCHAR的method。
:

l****2
发帖数: 41
5
如果addValue 只有两个参数,没有Types.NVARCHAR这第三个参数,程序运行没有问题
,只是想insert的中文字符存到数据库后都变成了junk

【在 g*****g 的大作中提到】
: You should do a simple test, just do a write and read, set debug
: point and check where it's screwed up. It's often somewhere in your
: application instead.
:
: driver

A**o
发帖数: 1550
6
去国内的论坛看看吧。那些人对这种问题更有经验。
我记得有个hibernate中文网什么的。

driver

【在 l****2 的大作中提到】
: 一个stored precedure,input parameters are int, nvarchar, date
: 通过hibernate做insert后,发现数据库保存的中文字符都变成了junk。觉得问题主要
: 在nvarchar上,hibernate好像不认这种datatype,要不就是microsoft的jdbc driver
: 不支持这种类型。
: 不知道这里谁做过国际化的项目?有人遇见过类似的问题吗?

1 (共1页)
进入Java版参与讨论
相关主题
[求助]实在不明白transaction,ejb这些概念java后端开发
hibernate 的两个问题About Hibernate
Hibernate的优势具体体现在哪里?搞不懂为什么hibernate为什么这么流行?
hibernate和jdbc的比较。Struts基本思路请教
谁给推荐一个简单的ORM吧网站国际化的问题
hibernate能不能orm没有主键的表格hibernate和ejb3
spring到底有什么好处?请问hibernate这个功能如何实现?
Java GC 为什么不能自动释放jdbc connection?Hibernate question
相关话题的讨论汇总
话题: hibernate话题: unicode话题: nvarchar话题: 保存话题: 国际化