一个无奈的Hibernate问题

背景:

1.数据库使用Oracle,表字段ColA被定义为char(10)(字段类型不能修改,这个是接口方定的)

2.hibernate使用NativeSQL查询(由于项目种种原因,不能使用标准Hibernate的OO方式)。

问题:

从list中返回了List<Object[]>对象,but每行的Object[]中,ColA被Hibernate转成了Character对象,只有一位,后面的char都被截断了.

查了hibernate的文档,知道可以设定每个字段的转化类型,but我们的sql是动态配置的,并不能确定某个字段一定是那种类型,因此此方法不能用了。

暂时的方案:

退回jdbc时代,直接读取DB的META,然后在读数据。

这里的疑问是,为啥Hibernate对Char字段的映射只能是1位嘛,觉得这个转换有问题!!

大家说说,又或者是本人太菜,学艺不精

相关推荐