即使我在Google上搜索过,我也想对某件事非常确定。ScrollMode.FORWARD_ONLY
是否表示我将按照数据库中的顺序接收结果?
我有类似的东西:
Scroller<Integer> foundRecs = new Scroller<Integer>(query.scroll(ScrollMode.FORWARD_ONLY));
也许是一个愚蠢的问题...
最佳答案
该特定的API是Hibernate,我对此不太了解,但是我猜想它最终会映射到TYPE_FORWARD_ONLY
(并且its documentation通过提及该常量表示同意)。
如果是这样,则否:这不会影响物品退回的顺序。
这仅意味着您只能遍历一次结果,并且只能向前导航(而不能向后导航)。
数据库实际上并没有存储数据的“顺序”,因为数据库的表是集合(而不是列表)。如果您需要某种顺序的结果,则需要在SQL中添加一个ORDER BY
(或在使用的任何查询系统中都添加一个等价的)。
关于java - ScrollMode.FORWARD_ONLY,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5880959/