hibernate oracle char character 字段的数据表只查出一个字符

hibernate oracle char character 字段的数据表只查出一个字符

在orcal下会遇到数据表中的字段如果为char类型的话,

使用hibernate原生sql去查询执行,返回结果往往会只显示一个字符,

原因是char在java只有两个字节。

解决方法

1.改成

Stringsql="selectcast(列名asvarchar2(列的大小))from表名";

2.通过

publicSQLQueryaddScalar(StringcolumnAlias,Typetype)限定他返回String就行

SQLQueryquery=session.createSQLQuery();

query.addScalar("列名",Hibernate.String)

相关推荐