1

我正在使用 objectify 光标来实现基本的分页,基本上是创建一个more按钮.. 你如何最好地使用 objectify 来实现分页,以建立允许用户前进和后退的链接。更像是一个页面列表..

1, 2, 3, 4, more

4

2 回答 2

2

您最好的选择可能是获取整个结果集的密钥并将其存储在会话或 javascript 中。每个下一个/上一个都可以通过 id 加载列表中的下一个项目。通过 id 加载非常便宜。您可以在内存缓存中缓存完整的查询结果,只要它不是太大,但这将取决于您要获取的对象类型。

于 2012-03-15T21:10:25.560 回答
0

您可以使用游标创建向前和向后一页的分页,通过FetchOptions.startCursor(..)FetchOptions.endCursor(..)

要创建更直接的分页链接,您必须使用FetchOptions.limit(..)FetchOptions.offset(..)

请注意,这offset(..)可能非常昂贵,因为它会获取给定页面之前的所有实体。因此,根据整个集合的使用和大小,您可能最好通过预加载和缓存一组密钥。或者更好的是,用搜索代替分页。

于 2012-03-15T20:51:34.067 回答