数据分页显示是一项挺烦人的工作,涉及到数据来源,数据生成,数据显示这几个方面。数据有可能是从任意地方以任意方式获取到的,而且获取到的数据又有可能是经过了任意的方式处理之后,再以任意的方式显示给最终用户。
这其中的一连串的“任意”就已经足够让人头疼了,我们现在要做的就是做出一个能一劳永逸的解决这一连串的问题的关于分页问题的设计。
首先要明确的就是:这只是一个关于解决分页问题的设计思想,不会提供一份具体实现这个设计的代码。
在开始之前,我们要先做一个假设:对数据分页的最终显示部分已经有具体的解决方案,并对其中的部分代码做一些改造,使其可以接受实现了IView接口的对象。
一、我们需要如下的接口:
二、针对 IView 并结合已经存在的具体的数据分页显示部分的代码实现的一个抽象类
三、按照具体的数据来源方式实现AbstractViewTemplate抽象类
四、整体部分的结构如下所示
数显示部分的具体实现_3 à IView |à AbstractViewTemplate_3
数据显示部分的具体实现_2 à IView |à AbstractViewTemplate_2
数据显示部分的具体实现_1 à IView |à AbstractViewTemplate_1
数据显示部分的具体实现 à IView |à AbstractViewTemplate|àViewTemplate_3
|à ViewTemplate_2
|à ViewTemplate_1