在Hibernate中,你可以用对象方式进行检索,也可以用Hibernate所推荐的HQL方式进行检索。不过有时候如果检索语句异常复杂,用普通的HQL无法满足的时候,就要采用原生的SQL语句进行检索了。
用普通的SQL检索只要有做过JDBC的人都应该会能很快上手,检索出来的数据会放在Object数组所形成的List中。在Object数组内存放每一个Column的数据。但是数据类型是什么呢,这个就有点不好把握了。
自己也没有深入调查研究,只是发现检索出来的数据类型有点乱,就是说有时候是char,有时候是String,有时候是数字。这个就有点头疼的,如果你明明想检索出一个String,结果最后出来一个char,就只有一个字符,真是欲哭无泪啊。
解决这个问题的方法很简单,在生成Query的时候,记得调用addScalar方法添加数据类型。比如
