Posted on 2005-11-19 11:00
canonical 阅读(251)
评论(0) 编辑 收藏 所属分类:
Witrix开发平台
分页的功能由两部分组成:取数据和计算分页。其中取数据的功能由IPageViewer接口实现
interface IPageViewer{
int getTotalCount();
List getAll();
int listPage(int startPos, int maxCount);
}
Pager是用户调用时的接口
class Pager{
public List getAll(){}
public List listPage(){}
public int getPageCount(){}
public int getPageSize(){}
public int getCurrentPage(){}
...
}
Pager使用IPageViewer作为数据供体,自身仅提供分页计算的功能。在witrix平台中, IPageViewer是表格数据的标准列举方式,因为与List接口相比,IPageViewer容许部分加载。
IPageViewer
可以有多种实现,如ListPageViewer, XmlPageViewer, ExcelPageViewer,
DbTablePageViewer等。一般情况下Pager提供的功能已经足够了,特殊情况下可以通过继承来扩展。例如卡片浏览和分页浏览模式之间的互
相切换通过派生类ItemPager来实现。