posts - 176, comments - 240, trackbacks - 0, articles - 7

[导入]Pager: Bridge模式

Posted on 2005-11-19 11:00 canonical 阅读(250) 评论(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来实现。


只有注册用户登录后才能发表评论。


网站导航: