mvi*_*fer 8 java sql oracle hibernate
我正在使用hibernate作为ORMapper.我想执行一个实际上相当简单的hql查询:
SELECT a
FROM Foo a
WHERE a.status = :A0status
ORDER BY a.bookingTypeCode ASC,
a.priority ASC
Run Code Online (Sandbox Code Playgroud)
然后将此hql查询转换为sql查询,如下所示:
select a.*
from Foo a
where a.status='A'
order by a.bookingtypecode ASC,
a.priority ASC
Run Code Online (Sandbox Code Playgroud)
当我使用Oracle SQL Developer在oracle数据库上执行sql时,我返回了17行.但是,当我执行hql查询时(使用list方法,Query我得到了17个元素的列表null.虽然元素的数量是正确的,但实际上并没有加载任何一个元素.
这是我创建和执行查询的方式:
// the hql query is stored in the hqlQuery variable;
// the parameter are stored in a Map<String, Object> called params
Query hQuery = hibSession.createQuery(hqlQuery);
for (Entry<String, Object> param : params.entrySet()) {
String key = param.getKey();
Object value = param.getValue();
hQuery.setParameter(key, value);
}
List<?> result = hQuery.list();
Run Code Online (Sandbox Code Playgroud)

有谁知道这可能是什么问题?
更新1
我最近从hibernate 3.2升级到4.3.5.升级之前一切正常.升级后我收到此错误.
mvi*_*fer 12
我已将休眠的日志级别设置为TRACE并发现了问题.它实际上是映射/逻辑/数据库错误.主键由两列组成(根据实体类),其中一列可以为空.但是,主键永远不能为空.因此,hibernate总是返回null.
| 归档时间: |
|
| 查看次数: |
10859 次 |
| 最近记录: |