现在我有一个休眠模型,我在其上设置了一个过滤器,然后加载它。如果找到至少一条记录,我只需要执行不同的逻辑,如果没有找到记录,则需要执行。
问题是加载所有匹配的记录可能非常耗时且效率低下。有没有办法加载第一个只找到的模型,或者在hql中执行某些操作,只是告诉我是否有匹配我的过滤器的记录?
答案 0 :(得分:0)
您可以使用投影并计算一些索引列。
答案 1 :(得分:0)
您可以统计查询次数 结果没有返回:
((整数) session.createQuery(“select count(*) from ....“)。iterate()。next() ).intValue()
如果您在模型上设置了过滤器,它也将应用于此查询。