PreferencesTutorial
关于配置的学习例子
为了全局性地设置属性值, 你将会需要用到配置的特性. 当前是用一个properties文件来实现的. 文档确实是个好工具, 用来描述如何在web.xml文件中建立配置相关项(Preferences), 以及去定义那些通常的属性. 在这里我想要讲的是, 关于配置特性的一些高级用法.
tag特性是一个可插拔的接口, 所有的tag特性都能够通过class类文件的完全路径来被声明, 这些class类文件是用来实现这接口. 这对于可插拔性的实现方式提供了一个非常方便的方式. 然而, 对于这个方式长远来来说确实是有一些设计和维护的考虑. 首先就是对于一个详细的代码基础有你自己的实现. 第二个就是如果你想要在另外一个eXtremeTable使用那个相同的实现, 你必须在另外一个jsp中拷贝和粘帖其完整的路径. 要解决这两个问题的方式就是在配置文件中声明一切事务.
Preferences Chart
配置文件的图表
下面罗列的所有与接口有关的特性, 这些特性都被声明在配置文件中. 列Tag显示了可应用的eXtremeTable标签. 列Attribute显示的是与tag特性的相关性. 列Interface显示的是需要实现的Java接口, 列Preference Key显示的是在配置文件中使用的key.
Tag | Attribute | Interface | Preference Key |
TableTag | filterRowsCallback | org.extremecomponents.table.callback.FilterRowsCallback | table.filterRowsCallback |
TableTag | interceptor | org.extremecomponents.table.interceptor.TableInterceptor | table.interceptor |
TableTag | retrieveRowsCallback | org.extremecomponents.table.callback.RetrieveRowsCallback | table.retrieveRowsCallback |
TableTag | sortRowsCallback | org.extremecomponents.table.callback.SortRowsCallback | table.sortRowsCallback |
TableTag | state | org.extremecomponents.table.state.State | table.state |
TableTag | view | org.extremecomponents.table.view.View | table.view |
RowTag | interceptor | org.extremecomponents.table.interceptor.RowInterceptor | row.interceptor |
ColumnTag | calc | org.extremecomponents.table.calc.Calc | column.calc |
ColumnTag | cell | org.extremecomponents.table.cell.Cell | column.cell |
ColumnTag | filterCell | org.extremecomponents.table.cell.Cell | column.filterCell |
ColumnTag | headerCell | org.extremecomponents.table.cell.Cell | column.headerCell |
ColumnTag | interceptor | org.extremecomponents.table.interceptor.ColumnInterceptor | column.interceptor |
ExportTag | interceptor | org.extremecomponents.table.interceptor.ExportInterceptor | export.interceptor |
ExportTag | view | org.extremecomponents.table.view.View | export.view |
ExportTag | viewResolver | org.extremecomponents.table.filter.ViewResolver | export.viewResolver |
ColumnsTag | autoGenerateColumns | org.extremecomponents.table.core.AutoGenerateColumns |
Assign Preference Alias
赋值配置项的别名
上面的图表显示了对于配置key的声明相关事务, 但现在要知道如何去给它一个有意义的别名来使用它. 如果你注意到配置key有一个通常的语法, 就是 tag.attribute. 为了给key一个别名, 只要在原来的命名后面增加一个名字. 语法就是 tag.attribute.alias.
eXtremeTable中的一个自定义的单元格叫做RowCountCell, 用来显示当前行数. 我将会示例这个RowCountCell, 在配置文件中用ColumnTag单元格属性声明这个例子.
首先来搞定这个自定义的单元格, 通过实现Cell接口或者继承AbstractCell.
public class RowCountCell extends AbstractCell {
protected String getCellValue(TableModel model, Column column) {
int rowcount = ((model.getLimit().getPage() - 1)
* model.getLimit().getCurrentRowsDisplayed())
+ model.getRowHandler().getRow().getRowCount();
return String.valueOf(rowcount);
}
}
然后在配置文件 (properties file) 中声明配置key, 给它一个别名. "eXtremeTable在一个默认的配置文件中可以设置它的所有配置项. 你同样可以重写这些特性用你的本地配置项."
对于RowCountCell默认的别名是rowCount, 就像下面这样:
column.cell.rowCount=org.extremecomponents.table.cell.RowCountCell
为了在ColumnTag中使用RowCountCell, 只要引用Cell的别名就可以了:
<ec:column alias="count" cell="rowCount"/>
这就关于使用它的全部过程. 现在你可以把单元格关联为rowCount. 如果包(package)改变了, 那么你只需更新配置项就可以了, 它自己就可以随之改变了对于每一个自定义的row count cell.
"注意: 在这个例子中, 我使用了ColumnTag的别名特性. 当你有两列都使用同一个属性的时候, 就可以使用这个别名特性了. 当列没有直接关联到一个列bean属性的时候, 它同样被使用, 这个例子就是这种情况. "
original text:
https://code.google.com/p/extremetable/wiki/PreferencesTutorial
相关推荐
不过,从提供的文件信息中,我们可以推断出所要关注的关键词是“eXtremeTable中文文档”,这是一份面向初学者的eXtremeTable组件使用说明文档。现在,我将依据这些信息,尝试构建出一份详尽的eXtremeTable组件使用...
根据提供的文档部分内容,我们可以推断出这是一篇关于 eXtremeTable 的中文文档,主要涉及该工具或系统的使用、配置以及相关技术细节。虽然原始文本包含大量的特殊字符和不可读部分,但仍然可以从其中提取出一些关键...
**eXtremeTable** 是一个专为Java Web开发设计的高效、易用的表格控件,它在处理大量数据时表现出色,尤其在数据分页和导出方面。在这个完整的例子中,我们将会深入探讨如何利用eXtremeTable实现数据的分页以及多种...
eXtremeTable文档 eXtremeTable文档 eXtremeTable文档 eXtremeTable文档 eXtremeTable文档 eXtremeTable文档
### extremeTable:强大的数据展示工具 #### 一、概述 **extremeTable**是一款开源的JSP自定义标签库,其主要功能是通过表格形式来高效地展示数据。这款工具的最新版本为1.0.1-M1。作为一款类似于`displaytag`和`...
博文链接:https://xinzhiz.iteye.com/blog/198102
《eXtremeTable教程详解》 eXtremeTable是一款强大的开源JSP定制标签库,主要用于在Web应用中以表格形式展示数据。本教程详细介绍了eXtremeTable的配置、使用方法以及各种标签的功能,旨在帮助开发者充分利用其功能...
《eXtremeTable参考文档》是针对eXtremeComponents中的一款核心组件——eXtremeTable的详细指南。eXtremeComponents是一个开源项目,它为JavaServer Pages (JSP) 开发者提供了丰富的定制标签库,使得在Web应用开发中...
我也刚开始看,感觉是个好东东,大家多多交流
本教程将详细讲解如何使用Hibernate ORM框架结合ExtremeTable实现高效的分页查询。 Hibernate是一个强大的对象关系映射(ORM)框架,它允许开发者以面向对象的方式处理数据库操作,避免了直接编写SQL语句的繁琐。而...
eXtremeTable分页控件完整例子包括了数据的分页、数据的Excel格式导出、数据的pdf电子书格式导出、数据的文本文件格式导出等功能,里面的源代码写得非常详细,好好看一下.... 功能强大,易于扩展的extremetable就是个...
### eXtremeTable使用指南:深入理解与配置 #### 引言 eXtremeTable作为eXtremeComponents系列中的核心组件之一,专为高级数据展示而设计,尤其适用于表格形式的数据呈现。该开源项目由Jeff Johnston领导的ECCN...
**eXtremeTable** 是一个高性能、轻量级的表格处理库,它为Java开发者提供了强大而灵活的表格数据管理能力。这个压缩包“eXtremeTable的使用方法.rar”显然包含了关于如何有效利用eXtremeTable的相关指南,特别是...
Spring MVC、Hibernate 和 ExtremeTable 是三个在Web开发中常见的技术框架,它们分别负责不同的职责,协同工作以实现高效的数据管理。下面将详细解释这三个技术及其在数据库增删改查中的应用。 Spring MVC 是一个...
displayTag,extremeTable相关文章
**eXtremeTable 使用手册概述** eXtremeTable 是 eXtremeComponents 系列中的一个开源 JSP 定制标签库,专门用于以表格形式展示数据。该库致力于提供高效、灵活的表格展示功能,使得开发者可以轻松配置和定制表格。...