EC-TABLE.docx_第1页
EC-TABLE.docx_第2页
EC-TABLE.docx_第3页
EC-TABLE.docx_第4页
EC-TABLE.docx_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

extremeTable 使用(2) 收藏 1 1.0.1-M1 版支持国际化修改web.xml文件增加 extremecomponentsResourceBundleLocation com.itorgan.tags.extreme.extremetableResourceBundle意指到 com.itorgan.tags.extreme 下找 extremetableResourceBundle_language_perties 文件extremetableResourceBundle_en_US.properties代码如下table.statusbar.resultsFound=0 results found, displaying 1 to 2 table.statusbar.noResultsFound=There were no results found.table.toolbar.showAll=Show AllextremetableResourceBundle_zh_CN.properties如下.table.statusbar.resultsFound=0 u6761u7EAAu5F55u7B26u5408u6761u4EF6, u73B0u5728u662Fu7B2C 1 u81F3 2 u6761u7EAAu5F55table.statusbar.noResultsFound=u6CA1u6709u8981u67E5u8BE2u7684u7EAAu5F55u3002table.toolbar.showAll=u6240 u6709补充:中文 - Unicode编码可通过反编译class文件或用native2ascii命令得到 。然后在table标签中增加locale属性即可切换 2 保留table的上一次状态 是指,不管跳转到另一个后再返回,extremeTable会将之前的Filter,Sort参数保存到session中,以至返回看到的页面还是之前的状态.实现操作方法:修改perties文件table.useSessionFilterSortParam=foosaveFilterSort=true 注意:saveFilterSort=true不能在properties文件中配置,只能在页面中设跳到新建一页面用于跳转的页面 1.jsp代码为Back 43 results found, displaying 1 to 12 extremeTable支持样式快速切换.可自定的样式包括column 的td以及table的一些属性,例如cellpadding等,另本人发现,在properties中如下设置tableHeader的样式是不行的不知道是否一个table.headerClass=itoTableHeadertable.headerSortClass=itoTableHeaderSort只能继承一个HeaderCellpublic class HeaderCell extends org.extremecomponents.table.cell.HeaderCell public final static String TABLE_HEADER = itoTableHeader; public final static String TABLE_HEADER_SORT = itoTableHeaderSort;新的样式代码:LINK REL=stylesheet HREF= TYPE=text/css 效果见下:4 实现 table width 自动累加原来的extremeTable宽度要自己set。不会自动能过下面的column累加。本人作了个修改以达到自动累加,省得自己加写上去:查看htmlView.java两处地方toolbarPlacementtableStart可见两处地方要修改的5 custom cell在properties文件中我们可观察到:table.cell_=displaytable.cell_currency=org.extremecomponents.table.cell.NumberCelltable.cell_number=org.extremecomponents.table.cell.NumberCelltable.cell_display=org.extremecomponents.table.cell.DisplayCelltable.cell_date=org.extremecomponents.table.cell.DateCell当 column 默认使用org.extremecomponents.table.cell.DisplayCellpublic class DisplayCell extends BaseCell public String html() HtmlBuilder html = new HtmlBuilder(); html.append(startTD(); Object value = column.getValue(); if (value != null & StringUtils.isNotEmpty(value.toString() html.append(value); else html.append( ); html.append(endTD(); return html.toString(); ec已其它cell日期格式化: cell = date format = yyyy-MM-dd 数字格式化: cell=currency format=#,#,#0.00 另外,extremeTable支持自定义cell在这里我以一个简单的例子以input框的形式出现 说明如何实现这一方便的扩展public class DemoInput extends BaseCell public String html() Integer rowNum = rowcount; HtmlBuilder html = new HtmlBuilder(); html.append(startTD(); Object value = column.getValue(); HtmlBuilder input = new HtmlBuilder(); input.input(text); (column.getProperty() + _ + rowNum); input.value(value.toString(); input.close(); html.append(input.toString(); html.append(endTD(); return html.toString(); properties文件增加table.cell_demoInput =org.extremecomponents.table.cell.DemoInput jsp代码效果显示为当然这只是一个简单的demo以说明如何自定义cell如上面你可以简单的实现同样功能6Extended Attributes新版本支持Extended Attributes,方便了用户扩展,记得0.9版本时还要我修改个地方,现在为table,column增加attribute方便多了.为table增加一个height的属性public class TableTag extends org.extremecomponents.table.tag.TableTag /div 的高度 private String height; public String getHeight() return height; public void setHeight(String height) this.height = height; public void addExtendedAttributes(Attributes attributes) attributes.addAttribute(height, getHeight(); /*/* * set the new attribuer to null - by ito */ public void release() super.release(); height = null; 然后就可以通过model.getTableHandler().getTable().getAttribute(height)取得这个值可以方便扩展 private void body(BaseModel model, Column column, boolean isFirstColumn, boolean isLastColumn) /原来的代码略 hssfCell.setEncoding(HSSFCell.ENCODING_UTF_16); /解决中文乱码/原来的代码略 private void createHeader(BaseModel model) /原来的代码略 hssfCell.setEncoding(HSSFCell.ENCODING_UTF_16); /解决中文乱码/原来的代码略 8 解决pdf中文问题帮POF注册中文字体,再修改export view即可解决9 Pagination10 其它亮点A sortable 与 exportable 属性 ,分别指可否排序,可否导出. 值为 false/true B 可以直接在中加html代码. 并可用collectionName.objectName类似的语法取得当前object的成员变量值C $ROWCOUNT可取当前row num,是指以1开始计算 D 本文来自CSDN博客,转载请标明出处:/GOALSTAR/archive/2007/08/07/1729781.aspxJSTL EC TABLE extremeTable 学习2007-11-06 20:131、何为 extremeTable,又一个开源taglib extremeTable,开源的jsp 自定义标签,以表格的形式显示数据,当前最新版本为1.0.1-M1.它是一个类似display tag,valueList 等开源产品.homepage: /download: /projects/extremecomp/开源产品作者:Jeff Johnston ,现居住美国,圣路易斯. 六年web应用软件开发经验,eXtremeComponents最初的创建者. 负责设计及大部分的编码。 其它还包括Paul Horn ,eXtremeTree的技术设计, 以及大部分的编码;Dave Goodin,Brad Parks等.主要特色1、导出以及pdf无需再另写jsp(这个基本与valuelist作比较,因为以前用valueList的时候每写一个table都要再写一个excel.jsp)2、扩展性比较强,基本上想怎样改就怎样改,对jar影响比较少。3、另外据官方声称有以下四点 Fast ( 本人曾小测一次,三千纪录情况下,效率基本与valuelist持平) Efficient Easy ( 得确很容易使用与理解加扩展) Reliable 安装要求1、Servlet 2.3 或更高2、 JDK 1.3.1 或更高 最小的Jars需求1、commons-beanutils 1.62、commons-collections 3.03、 commons-lang 2.04、 commons-logging 1.0.45、 standard 1.0.2PDF 导出要用到的包:1、 avalon-framework 4.02、batik 1.5-fop-0.20-53、 fop 0.20.54、 xalan 2.5.15、 xercesImpl 2.6.16、 xml-apis 2.0.2XLS 导出要用到的包:1、 poi-2.5.1.jar、安装与测试下载解压到的主要文件包括1src源文件2extremecomponents.jar以及其它所依赖的包3tld文件extremecomponents.tld4一组默认样式及图片extremecomponents.css5用以校验安装的测试页面test.jsp6doc文档,比较详细快速配置安装web app目录结构/ROOT /WEB-INF/web.xml /tld/extremecomponents.tld /lib /classes/perties perties文件可到sourceorgextremecomponentstablecore中得到 /images/*.jpg 一组默认样式及图片 /css/extremecomponents.css /test.jsp /index.jsp 用于学习以及扩展测试用代码请见下web.xml配置包括taglib uri 定义以及导出文件filter,由于只是手板功夫,这里就略过了,相关代码如下:/tld/extremecomponents/WEB-INF/tld/extremecomponents.tldeXtremeExportorg.extremecomponents.table.filter.ExportFiltereXtremeExport/*配置好所有后,开tomcat,测试浏览http:/your_web_app/test.jsp,看到Congratulations! You have successfully configured eXtremeTable!恭喜你,这表示安装成功!、动手学习这个taglib建index.jsp页面,修改代码如下link rel=stylesheet type=text/css href=% List goodss = new ArrayList();for (int i = 1; i 效果如下:1 1.0.1-M1 版支持国际化修改web.xml文件增加extremecomponentsResourceBundleLocationcom.itorgan.tags.extreme.extremetableResourceBundle意指到 com.itorgan.tags.extreme 下找 extremetableResourceBundle_language_perties 文件extremetableResourceBundle_en_US.properties代码如下table.statusbar.resultsFound=0 results found, displaying 1 to 2 table.statusbar.noResultsFound=There were no results found.table.toolbar.showAll=Show AllextremetableResourceBundle_zh_CN.properties如下.table.statusbar.resultsFound=0 u6761u7EAAu5F55u7B26u5408u6761u4EF6, u73B0u5728u662Fu7B2C 1 u81F3 2 u6761u7EAAu5F55table.statusbar.noResultsFound=u6CA1u6709u8981u67E5u8BE2u7684u7EAAu5F55u3002table.toolbar.showAll=u6240 u6709补充:中文 - Unicode编码可通过反编译class文件或用native2ascii命令得到 。然后在table标签中增加locale属性即可切换Extreme Table是最功能强大而又容易配置,扩展,自定义的Table 控件。最紧要的功能包括排序, 分页, 导出Excel, pdf和汇总。springside的best 示例代码在: listBook.jsp和listOrder.jsp.基础读物: 1. ExtremeTable自带的文档 .2.Luck翻译的ExtremeTable官方文档中文版 1. 安装1.1 安装原始版本1. 从 下载最新版2.把extremecomponents.jar 放入web-inf/lib3.根据minum, 导出excel 或 导出pdf的需要,把/lib下的jar copy到web-inf/lib4.把images里的图片放入web的任意目录5.把css文件放到web的任意目录6.在/source/org/extremecomponents/table/core目录找到perties文件,把它复制到WEB-INF/classes里面并进行修改.7.修改web.xml (见2)。0.2 复制SpringSide的样式1.Copy springside的Table Head的图,查。2.将springside中的修改版extremecomponents.css文件放入任意目录3.把/src/resource/perties 复制到对应目录0.3 使用Compact View很重要默认的式样不符合大家的审美,幸亏还有Compact View和css设置,让我们可以敬谢不敏它号称非常方便的HtmlView子类扩展。1. 在全局设置里table.view.html=org.extremecomponents.table.view.CompactView2.把images里/table/compact/*.gif copy 到 /table2.全局属性配置ExtremeTable支持在properties文件里方便的统一配置丰富的全局属性在/source/org/extremecomponents/table/core目录找到perties文件,把它复制到WEB-INF/classes里面.在web.xml里面增加extremecomponentsPreferencesLocation/perties一般只写需要修改的文件:table.filterable=falsetable.imagePath=/images/table/*.giftable.locale=zh_CNtable.view.html=org.extremecomponents.table.view.CompactViewrow.highlightRow=truecolumn.format.date=yyyy-MM-ddcolumn.format.currency=#,#,#,#,#00.003.导出Excel注意Excel 导出的Tag已改为,且官方版不支持中文文件名。在web.xml必须加入:eXtremeExportorg.extremecomponents.table.filter.ExportFiltereXtremeExport/*ExtremeTable导出的一项重要特性是可以根据不同的View导出不同的列.比如html管理界面可能只列出订单几个最重要的列,而导出excel时则需要导出所有的列。又比如有些操作按纽的列只想在html出现,excel里不想出现:以上订单日期列在html view看不到,而excel,pdf view可以见到.而编辑图标,选择Checkbox这些管理界面上的列,也可以设置不export到pdf,excel view4.其他要点4.1. 使用排序功能时,如果property为嵌套属性时,需要设置alias因为javascript的关系.4.2. Date Cell与NumberCell 和RowCountCell在全局属性定义:column.format.date= yyyy-MM-ddcolumn.format.currency= ¥#,#,#00.00其中RowCountCell用于显示序号。4.3. 汇总在column中加入两个cac属性,就会自动在table的底端显示汇总4.4 i18N在Web.xml里面指定i18N的Properties文件extremecomponentsMessagesLocationmessages4.5数据库分页EC默认从数据库中查找所有记录然后由它来分页,如果查询结果较大,可以考虑使用数据库端分页的方案。此时,EC会使用Limit对象向Controller传递PageNo,PageSize,OrderBy等分页信息。而服务端将向EC返回总记录数和当前页的内容,具体请参看 BookController。4.6不显示导出excel及分页最快的方式是设置table的showStatusBar= false4.7ImagePath旧版EC包括其文档都在每个table tag里定义ImagePath, 新版已经可以自动插入ContextPath,只需在properties文件定义table.imagePath=/images/table/*.gif即可5.自定义及扩展ExtremeTable比Display Tag的i一个就是良好的自定义和扩展能力,不用千人一面。不过,人总是懒的,虽然扩展子类很容易,但能不扩展就还是不可扩展了。幸亏用Compact View再改改CSS一般就能达到要求。5.1. 良好的CSS定义ExtremeTable 的CSS定义非常严谨, 并且提供很多个层次的修改方式:1.直接修改css文件, 可以把table view改成任意样式2.修改全局属性, 改变某种元素对应的css class名table.styleClass=tableRegion3.在某个页面的row,column tag中定义classSpringSide采用层次1, 直接修改extremecomponents.css为合适的样式5.2方便的属性扩展row与column已提供了丰富的普通属性与 javascript属性如onClick(), 如果属性仍然未够,可自行扩展与tag ,并通过全局属性指定新的子类名。为了方便大家在子类扩展属性, extreme Table提供了专门的回调函数与Util函数如public void addColumnAttributes(Column column) column.addAttribute(customAttributeOne, customAttributeOne); 1. ExtremeTable自带的文档. 2.Luck翻译的ExtremeTable官方文档中文版 0.概述Extreme Table最紧要的功能是排序, 分页, 导出Excel, pdf和汇总。 1. 从 下载最新版 2.把extremecomponents.jar 放入web-inf/lib 3.根据minum, 导出excel 或 导出pdf的需要,把/lib下的jiarcopy到web-inf/lib 4.把images里的图片放入web的任意目录 5.把css文件放到web的任意目录 6.在/source/org/extremecomponents/table/core目录找到perties文件,把它复制到WEB-INF/classes里面. 7.修改web.xml , 修改全局属性(见2)。0.2 安装SpringSide的优化版本 1.将springside中的web-inf/lib/extremecomponents-springside.jar 放入web-inf/lib目录 2.将Extreme带的minum和excel jar放入 3.复制 springside中images/table下面的图片到对应目录。(还有一幅属于springside的Table Head的图,查) 4.将springside中的修改版extremecomponents.css文件放入任意目录 5.把src/perties 复制到对应目录 6.修改web.xml, 修改全局属性。0.3 使用Compact View 默认的式样不符合大家的审美,幸亏还有Compact View和css设置,让我们可以敬谢不敏它号称非常方便的HtmlView子类扩展。 1. 在全局设置里table.view.html=org.extremecomponents.table.view.CompactView 2.把images里/table/compact/*.gif copy 到 /table1.自定义及扩展 ExtremeTable比Display Tag的i一个就是良好的自定义和扩展能力,不用千人一面。 不过,人总是懒的,虽然扩展子类很容易,但能不扩展就还是不可扩展了。幸亏用Compact View再改改CSS一般就能达到要求。1.1. 良好的CSS定义 1.直接修改css文件, 可以把table view改成任意样式 2.修改全局属性, 改变某种元素对应的css class名table.styleClass=tableRegion 3.在某个页面的row,column tag中定义class SpringSide采用层次1, 直接修改extremecomponents.css为合适的样式1.2.方便的属性扩展 row与column已提供了丰富的普通属性与 javascript属性如onClick(), 如果属性仍然未够,可自行扩展与tag ,并通过全局属性指定新的子类名。 为了方便大家在子类扩展属性, extreme Table提供了专门的回调函数与Util函数如(详细请看手册)public void addExtendedAttributes(Row row) table.addAttribute(TableConstants.IDENTIFIER, TagUtils.evaluateExpre

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论