【发布时间】:2015-02-10 14:02:41
【问题描述】:
有一个简单的 sql 查询,它只获取 ONE 记录。数据库是oracle。
下面是简单的查询:
select *
from APPEALCASE appealcase0_
where appealcase0_.caseNumber='BAXXXXX00' and appealcase0_.DELETED_FLAG='N'
当我使用休眠获取这一行时,响应时间为500ms,这很慢,因为它必须非常快并且不超过 10 毫秒。但是当我将休眠查询对象中的MaxResults 设置为 1(one) 时,响应时间提高到了 15 毫秒。
虽然我的问题得到了解决,但我仍然对将 MaxResults 设置为 1 如何大幅改善响应时间感到困惑。谁能给我解释一下?
【问题讨论】:
-
只有在使用 Hibernate 时才可以看到缓慢的响应时间——或者当从 SQL*Plus 发出相同的查询时也会出现这种情况?
-
只有在查询通过 jdbc 连接运行时才会发生。
标签: oracle performance hibernate fetch