以使用Struts为例,说明一下如何使用eXtremeTable的分页特性
这一切都可以在Action中完成,在Action会用到JSP中eXtremeTable的table标签的属性'tableId' 和'item','tableId'用于完成eXtremeTable的分页,'item'用于返回你分页的结果集,不多不少,刚好是你需要查看的那一页的结果集,比如说,你一页是10条记录,那你访问第20页的时候,'item'的结果集就只有第201条到第210条记录.还有就是在request中加入totalRows的属性,表示本次查询结果的数量
另外,JSP的中,eXtremeTable的table标签要retrieveRowsCallback属性,将该属性设为 org.extremecomponents.table.callback.LimitCallback,这是它默认的分页回调类,你也可以写自已的回调类.设置了该默认的回调类以后,你在Action里就需要向request加入totalRows属性,值为你的查询结果总记录数,这样才会产生翻页的效果.
现在就你的DisplayAction中加分页的特性了,如下:
Limit limit = LimitFactory.createInstanceOfLimit(request, TABLEID);
LimitFactory.setLimitPageAndRowAttr(limit,PAGE_SIZE,TOTAL_SIZE);
这里的TABLEID就是JSP页上标签的属性tableId, PAGE_SIZE是你一页的记录数,TOTAL_SIZE是你查询数据的总数
然后设置totalRow属性,它的值被要求为Integer类型的,转换一下:
request.setAttribute("totalRows",new Integer(TOTAL_SIZE));
将分页后的结果集(一页的内容)放到request的resultList(此为JSP中item属性设置的值)属性中去:
request.setAttribute("resultList", getTestData(limit.getCurrentRowsDisplayed(),limit.getPage()));
上面得到分页数据的函数原形为getTestData(int pageSize,int paget),通过指定一页的记录数和第几页来获得所需的数据,这可以根据数据库的分页特性,或者通过滑动游标的方式来得到,这里不再傲述.
以下为部分代码:
JSP部分:
<ec:table
items="resultList" var="item" tableId="youTableId"
retrieveRowsCallback="org.extremecomponents.table.callback.LimitCallback"
filterRowsCallback="org.extremecomponents.table.callback.LimitCallback"
sortRowsCallback="org.extremecomponents.table.callback.LimitCallback"
action="${pageContext.request.contextPath}/DisplayAction.do"
imagePath="${pageContext.request.contextPath}/images/table/*.gif"
title="TEST"
width="100%"
rowsDisplayed="10"
sortable="false"
filterable="false"
>
<ec:column property="name" title="姓名"/>
<ec:column property="nickName" title="别名"/>
</ec:table>
Action部分代码:
Limit limit = LimitFactory.createInstanceOfLimit(request, TABLEID);
LimitFactory.setLimitFilterAndSortAttr(limit);
LimitFactory.setLimitPageAndRowAttr(limit,PAGE_SIZE,TOTAL_SIZE);
request.setAttribute("resultList",getTestData(limit.getCurrentRowsDisplayed(),limit.getPage()));
request.setAttribute("totalRows",new Integer(TOTAL_SIZE));
这样就可以了,相信这也不是很难的东东吧,已经比较详细了,大家应该很容易看懂吧.
哦,对了,还有,标签里的rowDisplayed属性要和Action中的PAGE_SIZE一致,不然会有问题...
分享到:
相关推荐
通过深入理解并实践这些示例代码,开发者可以掌握eXtremeTable的核心特性,提升Web应用的用户体验,同时也能提高数据处理和导出的效率。对于从事Java Web开发的人员来说,掌握eXtremeTable的使用无疑是提升项目质量...
本教程将详细讲解如何使用Hibernate ORM框架结合ExtremeTable实现高效的分页查询。 Hibernate是一个强大的对象关系映射(ORM)框架,它允许开发者以面向对象的方式处理数据库操作,避免了直接编写SQL语句的繁琐。而...
总的来说,"eXtremeTable中文文档"是一份全面的指南,旨在帮助用户深入理解和使用eXtremeTable系统。无论你是初次接触还是经验丰富的开发者,这份文档都将是你探索和驾驭eXtremeTable的强大工具。通过阅读这份PDF,...
根据提供的文档部分内容,我们可以推断出这是一篇关于 eXtremeTable 的中文文档,主要涉及该工具或系统的使用、配置以及相关技术细节。虽然原始文本包含大量的特殊字符和不可读部分,但仍然可以从其中提取出一些关键...
eXtremeTable分页控件完整例子包括了数据的分页、数据的Excel格式导出、数据的pdf电子书格式导出、数据的文本文件格式导出等功能,里面的源代码写得非常详细,好好看一下.... 功能强大,易于扩展的extremetable就是个...
我也刚开始看,感觉是个好东东,大家多多交流
这个压缩包“eXtremeTable的使用方法.rar”显然包含了关于如何有效利用eXtremeTable的相关指南,特别是通过包含的CHM文件“2008821161857.chm”,我们可以期待找到详细的文档和教程。 eXtremeTable的主要特点包括:...
这篇博客文章将带你深入了解 ExtremeTable 的核心特性和应用场景,同时提供了一份详细的用户指南——《eXtremeComponentsCN.pdf》,帮助开发者更好地理解和运用这个工具。 首先, ExtremeTable 的主要特点是其高效...
eXtremeTable文档 eXtremeTable文档 eXtremeTable文档 eXtremeTable文档 eXtremeTable文档 eXtremeTable文档
1. **高度自定义**:eXtremeTable支持多种样式和布局定制,开发者可以根据需求调整表格的外观和行为,如行和列的排序、过滤、分页等。 2. **数据绑定**:它能够与各种数据源进行绑定,包括数据库查询结果、Java集合...
### eXtremeTable使用指南:深入理解与配置 #### 引言 eXtremeTable作为eXtremeComponents系列中的核心组件之一,专为高级数据展示而设计,尤其适用于表格形式的数据呈现。该开源项目由Jeff Johnston领导的ECCN...
1. **Excel/PDF导出无需额外JSP**: 相比于`valueList`等工具,使用**extremeTable**时无需为每个表格单独编写用于导出Excel或PDF的JSP文件。 2. **高度可扩展性**: 用户可以根据自己的需求轻松地进行定制化修改,而...
eXtremeTable提供了丰富的特性,如表格的显示、过滤、排序、样式设定,以及保存表格状态等功能。它还支持扩展属性,允许用户根据需求进行自定义。 3. TableTag TableTag是表格的核心标签,用于创建和管理表格。它...
总的来说,Spring MVC、Hibernate和ExtremeTable的结合使用,为开发基于Web的数据库应用提供了高效且灵活的解决方案。Spring MVC负责请求分发和业务逻辑处理,Hibernate处理数据库操作,而ExtremeTable则在前端展示...
displayTag,extremeTable相关文章
**eXtremeTable 使用手册概述** eXtremeTable 是 eXtremeComponents 系列中的一个开源 JSP 定制标签库,专门用于以表格形式展示数据。该库致力于提供高效、灵活的表格展示功能,使得开发者可以轻松配置和定制表格。...