|
1
4
我将扩展(或创建)一个迭代器类,并添加一个构造函数参数,该参数指定每页的项数,并添加一个nextpage()方法,该方法返回适当大小的集合(如果没有足够的项来填充页面,则小于该集合)。 另一个选项是简单地扩展或创建一个迭代器类,并创建一个nextpage()方法,该方法采用一个整数,该整数是页面上应该出现的最大项数,返回一个适当大小或更小的集合。 迭代器模式在GOF手册中,如果需要引用的话。 |
|
|
2
1
如果您一次只想从数据库中提取一个页面,那么这可以作为数据库模式来完成。无论您是在数据库中还是在访问层中实现它,您都需要知道: 正在请求的项目总数、页面大小。 然后,代码需要为所有项目创建一个完整的可索引(它有项目编号)的键值列表,根据需要或指定进行排序,然后只返回那些带有索引的项目的所有数据,这些索引将它们放在请求的页面中。 例如,在SQL Server中(使用适当的索引),可以在单个存储过程中使用表变量保存键的排序列表,并快速返回任何数据页。 |