ExtremeTable
0.概述
Extreme Table是最功能强大而又容易配置,扩展,自定义的Table 控件。
最紧要的功能包括排序, 分页, 导出Excel, pdf和汇总。
springside的best 示例代码在: listBook.jsp和listOrder.jsp.
基础读物:
1.1 安装原始版本
2.把extremecomponents.jar 放入web-inf/lib
3.根据minum, 导出excel 或导出pdf的需要,把/lib下的jar copy到web-inf/lib
4.把images里的图片放入web的任意目录
5.把css文件放到web的任意目录
6.在/source/org/extremecomponents/table/core目录找到extremetable.properties文件,把它复制到WEB-INF/classes里面并进行修改.
7.修改web.xml (见2)。
0.2 复制SpringSide的样式
1.Copy springside的Table Head的图,查。
2.将springside中的修改版extremecomponents.css文件放入任意目录
3.把/src/resource/extremetable.properties 复制到对应目录
0.3 使用Compact View很重要
默认的式样不符合大家的审美,幸亏还有Compact View和css设置,让我们可以敬谢不敏它号称非常方便的HtmlView子类扩展。
1. 在全局设置里
table.view.html=org.extremecomponents.table.view.CompactView
2.把images里/table/compact/*.gif copy 到 /table
ExtremeTable支持在properties文件里方便的统一配置丰富的全局属性
在/source/org/extremecomponents/table/core目录找到extremetable.properties文件,把它复制到WEB-INF/classes里面.
在web.xml里面增加
<context-param>
<param-name>extremecomponentsPreferencesLocation</param-name>
<param-value>/extremetable.properties</param-value>
</context-param>
一般只写需要修改的文件:
table.filterable=false
table.imagePath=/images/table/*.gif
table.locale=zh_CN
table.view.html=org.extremecomponents.table.view.CompactView
row.highlightRow=true
column.format.date=yyyy-MM-dd
column.format.currency=###,###,###,###,#00.00
注意Excel 导出的Tag已改为,且官方版不支持中文文件名。
<ec:exportXls fileName="BookList.xls" tooltip="导出 Excel"/>
在web.xml必须加入:
<filter>
<filter-name>eXtremeExport</filter-name>
<filter-class>org.extremecomponents.table.filter.ExportFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>eXtremeExport</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
ExtremeTable导出的一项重要特性是可以根据不同的View导出不同的列.
比如html管理界面可能只列出订单几个最重要的列,而导出excel时则需要导出所有的列。
<ec:column property="orderdate" title="订单日期" cell="date" format="yyyy-MM-dd" viewsDenied= "html"/>
又比如有些操作按纽的列只想在html出现,excel里不想出现:
<ec:column property="orderdate" title="订单日期" viewAllowed= "html"/>
以上订单日期列在html view看不到,而excel,pdf view可以见到.
而"编辑图标","选择Checkbox"这些管理界面上的列,也可以设置不export到pdf,excel view
4.1. 使用排序功能时,如果property为嵌套属性时,需要设置alias
因为javascript的关系.
<ec:column property="customer.name" title="客户名称" alias="customer"/>
4.2. Date Cell与NumberCell 和RowCountCell
在全局属性定义:
column.format.date= yyyy-MM-dd
column.format.currency= ¥###,###,#00.00
<ec:column property="totalprice" title="总金额" cell="currency" width="80" />
<ec:column property="shipdate" title="发货日期" cell="date" width= "80"/>
<e
其中RowCountCell用于显示序号。
4.3. 汇总
在column中加入两个cac属性,就会自动在table的底端显示汇总
<ec:column property="totalprice" title="总金额" cell="number" format="###,###,##0.00" calc="total" calcTitle= "汇总:"/>
4.4 i18N
在Web.xml里面指定i18N的Properties文件
<context-param>
<param-name>extremecomponentsMessagesLocation</param-name>
<param-value>messages</param-value>
</context-param>
<ec:column property="name" title="book.name"/>
4.5数据库分页
EC默认从数据库中查找所有记录然后由它来分页,如果查询结果较大,可以考虑使用数据库端分页的方案。
此时,EC会使用Limit对象向Controller传递PageNo,PageSize,OrderBy等分页信息。而服务端将向EC返回总记录数和当前页的内容,具体请参看 BookController。
4.6不显示导出excel及分页
最快的方式是设置table的showStatusBar= false
<ec:table items= "order.orderItems"var="item" action="" showStatusBar= "false">
4.7ImagePath
旧版EC包括其文档都在每个table tag里定义ImagePath, 新版已经可以自动插入ContextPath,只需在properties文件定义table.imagePath=/images/table/*.gif即可
ExtremeTable比Display Tag的i一个就是良好的自定义和扩展能力,不用千人一面。
不过,人总是懒的,虽然扩展子类很容易,但能不扩展就还是不可扩展了。幸亏用Compact View再改改CSS一般就能达到要求。
5.1. 良好的CSS定义
ExtremeTable 的CSS定义非常严谨, 并且提供很多个层次的修改方式:
1.直接修改css文件, 可以把table view改成任意样式
2.修改全局属性, 改变某种元素对应的css class名
table.styleClass=tableRegion
3.在某个页面的row,column tag中定义class
<ec:row or styleClass=""/>
SpringSide采用层次1, 直接修改extremecomponents.css为合适的样式
5.2方便的<tr><td>属性扩展
row与column已提供了丰富的普通属性与 javascript属性如onClick(), 如果属性仍然未够,可自行扩展<row>与<column>tag ,并通过全局属性指定新的子类名。
为了方便大家在子类扩展属性, extreme Table提供了专门的回调函数与Util函数如
public void addColumnAttributes(Column column) {
column.addAttribute("customAttributeOne", customAttributeOne);
}
如果不是Extremetable的特别支持, 普通taglib class要扩展属性的话:
1.定义真正的Java属性,setter,getter
2. tld文件中声明新的属性
3.重载输出函数将新属性打印出来
5.3 扩展HTMLView,cell 等显示组件
分享到:
相关推荐
ET开发接口文档帮助手册
"et99 加密狗完全文档资料" 提供了关于这个特定加密狗模型的全面信息,可能包括其工作原理、使用方法、开发接口以及相关的应用示例。 `api` 文件夹可能包含了加密狗的编程接口文档,这通常是开发者与加密狗进行交互...
本文档旨在提供关于华为ET536 3G网卡升级的详细指导,帮助用户独立完成整个升级流程。升级的主要目的是修复已知问题、增强功能以及提高整体性能。通过遵循本文档中的步骤,用户可以轻松地将ET536升级到最新的软件...
《ETHERCAT控制器ET1100使用手册》是为EtherCAT从站控制器ET1100量身定制的操作指南。手册全面介绍了ET1100控制器的技术细节、硬件描述、以及其寄存器概述。本控制器是EtherCAT通信协议下的一个从站设备,由Beckhoff...
"et199_dongle_et199_" 是一个与ET199开发板相关的压缩包文件,其中包含了各种资源和文档,用于帮助开发者进行软件开发和硬件调试。ET199通常指的是一个嵌入式设备或者模块,可能是用于物联网(IoT)应用、数据采集、...
CP340341440441ET200 串口通讯综合文档V3.0,西门子S7 300/400系列
综合来看,EtherCAT ET1100数据手册为专业人员提供了详细的硬件信息和开发指南,使开发者能够准确地理解和使用ET1100芯片,进而开发出符合EtherCAT标准的高性能自动化设备。这份资料是进行EtherCAT技术开发不可或缺...
该项目专注于通过使用 pix2pixHD 对文档图像进行去扭曲处理,这是一种可用于一般图像到图像转换的 GAN。目标是获取扭曲、折叠、皱巴巴等文档的图像,并通过使用pix2...使用深度学习的文档图像去扭曲 (Ramanna et.al)
串口通讯,又经常被称为点对点通讯或者PtP通讯,是工业设备中的一种非常通用的通讯方式,常用于获取相对远程采集设备的数据。 串行通信,通常利用RS232C或者RS485电气接口,实现ASCII码或者Modbus通讯;...
首先,`ethercat_esc_datasheet_sec2_registers_2i9.pdf`文档详细介绍了ET1100中的寄存器定义。在 EtherCAT 技术中,寄存器是控制和状态信息的关键存储单元。这些寄存器包括配置寄存器、状态寄存器、控制寄存器和...
西门子 S7 300 400 1200 1500 ET200 串口通讯综合文档. 1.问:S7-300怎么和第三方走串口通讯,需要什么硬件和软件? 答:首先确认走什么协议,ASCII协议(自由口),还是Modbus RTU协议。 如果是ASCII协议,硬件...
wps表格文档.et
文档标题为“AN_Sample_Schematic_ET1100_KS8721BL”,这表明文档主要涉及ET1100与Micrel KS8721BL的硬件设计原理图。文档还包含设计者信息、修订版本号、日期等基本信息。例如,设计者信息显示来自德国Eiserstr.5的...
西门子SIMATIC ET 200SP是西门子工业自动化产品中的一员,专门用于分布式控制系统的构建。ET 200SP系列模块化的设备设计包括了各种输入输出模块,其中故障安全模块(FailSafe,简称F-模块)是其中的重要组成部分。...
"et200sp_mischaufbau_product_information_zh-CHS_zh-CHS.pdf" 这份文档很可能是西门子官方提供的关于SIMATIC ET 200SP与ET 200AL混合组态的产品详细资料,包括产品特性、技术规格、组态指南和应用示例等内容。...