`
liangjian103
  • 浏览: 176983 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

extremetable

阅读更多

[1] 1.0.1-M1 版支持国际化
修改web.xml文件增加

< context-param >
   
< param-name > extremecomponentsResourceBundleLocation </ param-name >
   
< param-value > com.itorgan.tags.extreme.extremetableResourceBundle </ param-value >
</ context-param >



意指到 com.itorgan.tags.extreme 下找 extremetableResourceBundle_[language]_[country].properties 文件

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 All

extremetableResourceBundle_zh_CN.properties如下.
table.statusbar.resultsFound={0} \u6761\u7EAA\u5F55\u7B26\u5408\u6761\u4EF6, \u73B0\u5728\u662F\u7B2C {1} \u81F3 {2} \u6761\u7EAA\u5F55
table.statusbar.noResultsFound=\u6CA1\u6709\u8981\u67E5\u8BE2\u7684\u7EAA\u5F55\u3002
table.toolbar.showAll=\u6240 \u6709

补充:中文 - > Unicode编码 可通过反编译class文件或用native2ascii命令得到 。

然后在table标签中增加locale属性即可切换<ec:table
<ec:table

< ec:table
     ………………
     ………………
     ………………
     locale
= " en_US "
>

< ec:table
     ………………
     ………………
     ………………
     locale
= " zh_CN "
>


[2] 保留table的上一次状态
      是指,不管跳转到另一个后再返回,extremeTable会将之前的Filter,Sort参数保存到session中,以至返回看到的页面还是之前的状态.<ec:table
<ec:table
<ec:table

</ec:table
</ec:table
</ec:table
实现操作方法:
修改extremecomponents.properties文件
table.useSessionFilterSortParam=foo
saveFilterSort="true" 注意:saveFilterSort="true"不能在properties文件中配置,只能在页面中设
<ec:table

 <ec:table
     ……………………
     saveFilterSort
= " true "
/ ec:table >
< a href = " 1.jsp " > 跳到 </ a >

新建一页面用于跳转的页面 1.jsp
代码为

< a href = " test.jsp?foo=true " > Back </ a >

</ec:table
</ec:table
</ec:table
<ec:table
<ec:table
<ec:table

[3] 样式修改
基本的HTML结构

 

< div class ="eXtremeTable" >
< table border ="0"    cellpadding ="0"    cellspacing ="0"    width ="100%" >
    
< tr >
        
< td class ="title" >< span > <!-- 标题 --> </ span ></ td >
        
< td align ="right" >
        
< table border ="0"    cellpadding ="0"    cellspacing ="1"    class ="toolbar" >
            
< tr >
      
< form name ="pres_toolbar"    action ="/extremesite/public/demo/presidents.jsp" >
            
<!-- 工具栏,包括上一页,下一页以及导出 -->
            
</ tr >
            
< tr >
      
</ form >
            
</ tr >
        
</ table >
        
</ td >
    
</ tr >
</ table >

< table id ="pres"    border ="0"    cellspacing ="2"    cellpadding ="0"    width ="100%"    class ="tableRegion" >
    
< tr >
        
< td colspan ="6" >
        
< table border ="0"    cellpadding ="0"    cellspacing ="0"    width ="100%" >
            
< tr >
                
< td class ="statusBar" > 43 results found, displaying 1 to 12 </ td >
                
< td class ="filterButtons" > </ td >
            
</ tr >
        
</ table >
        
</ td >
    
</ tr >         

< form name ="pres_filter"    action ="/extremesite/public/demo/presidents.jsp" >
    
< tr class ="filter"    id ="filter" >
        
<!--过滤条件的input框 -->
    
</ tr >
</ form >
    
< tr >
        
<!-- tableHead -->
    
</ tr >
    
< tbody class ="tableBody" >
    
< tr >
        
<!-- column -->
    
</ tr >
    
</ tbody >
</ table >
</ div >


extremeTable支持样式快速切换.可自定的样式包括column 的td以及table的一些属性,例如cellpadding等,
另本人发现,在properties中如下设置tableHeader的样式是不行的.不知道是否一个BUG
table.headerClass=itoTableHeader
table.headerSortClass=itoTableHeaderSort

只能继承一个HeaderCell

public 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 = " <c:url value= " / style.css " /> " TYPE = " text/css " >
<ec:table
collection="goodss"
    action="${pageContext.request.contextPath}/test.jsp"
    imagePath="${pageContext.request.contextPath}/images/*.gif"
    cellpadding="1"
    title="my bread"
    saveFilterSort="true"
    locale="zh_CN"
>
<ec:column property="code" title="编号" width="100" styleClass="GridTd"/>
<ec:column property="name" title="名称" width="200" styleClass="GridTd"/>
<ec:column property="status" title="状态" width="80" styleClass="GridTd"/>
<ec:column property="born" title="生产日期" width="100" cell="date" format="yyyy-MM-dd" styleClass="GridTd"/>
</ec:table>

效果见下:


[4] 实现 table width 自动累加
原来的extremeTable 宽度要自己set。不会自动能过下面的column累加。
本人作了个修改以达到自动累加,省得自己加写上去:
查看htmlView.java 两处地方 
toolbarPlacement
tableStart可见两处地方要修改的


[5] custom cell
在properties文件中我们可观察到:

table.cell_=display
table.cell_currency=org.extremecomponents.table.cell.NumberCell
table.cell_number=org.extremecomponents.table.cell.NumberCell
table.cell_display=org.extremecomponents.table.cell.DisplayCell
table.cell_date=org.extremecomponents.table.cell.DateCell

当 column 默认使用org.extremecomponents.table.cell.DisplayCell

public 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(
" &nbsp; " );
         }


         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 " );
         input.name(column.getProperty()
+ " _ " + rowNum);
         input.value(value.toString());
         input.close();
         html.append(input.toString());
         html.append(endTD());
        
return html.toString();
     }

}

 


</ec:table
</ec:table
</ec:table

分享到:
评论

相关推荐

    eXtremeTable中文文档

    **eXtremeTable中文文档** eXtremeTable是一个高性能、可扩展的表格存储系统,主要用于处理大规模数据。这个系统的设计目标是提供快速的数据访问和处理能力,以适应大数据时代的挑战。它融合了数据库管理和分布式...

    eXtremeTable中文文档.pdf

    根据提供的文档部分内容,我们可以推断出这是一篇关于 eXtremeTable 的中文文档,主要涉及该工具或系统的使用、配置以及相关技术细节。虽然原始文本包含大量的特殊字符和不可读部分,但仍然可以从其中提取出一些关键...

    eXtremeTable分页控件完整例子(数据分页+数据导出)

    **eXtremeTable** 是一个专为Java Web开发设计的高效、易用的表格控件,它在处理大量数据时表现出色,尤其在数据分页和导出方面。在这个完整的例子中,我们将会深入探讨如何利用eXtremeTable实现数据的分页以及多种...

    extremeTable

    ### extremeTable:强大的数据展示工具 #### 一、概述 **extremeTable**是一款开源的JSP自定义标签库,其主要功能是通过表格形式来高效地展示数据。这款工具的最新版本为1.0.1-M1。作为一款类似于`displaytag`和`...

    ExtremeTable

    《极致表格:深入理解 ExtremeTable》 在IT领域,数据的处理和展示是不可或缺的部分,尤其是在数据分析、报表生成以及各种业务应用中。 ExtremeTable 是一个强大的开源Java组件,专为处理大量数据和创建复杂的表格...

    eXtremeTable参考文档.pdf

    《eXtremeTable参考文档》是针对eXtremeComponents中的一款核心组件——eXtremeTable的详细指南。eXtremeComponents是一个开源项目,它为JavaServer Pages (JSP) 开发者提供了丰富的定制标签库,使得在Web应用开发中...

    eXtremeTable

    eXtremeTable文档 eXtremeTable文档 eXtremeTable文档 eXtremeTable文档 eXtremeTable文档 eXtremeTable文档

    eXtremeTable的使用方法.rar

    **eXtremeTable** 是一个高性能、轻量级的表格处理库,它为Java开发者提供了强大而灵活的表格数据管理能力。这个压缩包“eXtremeTable的使用方法.rar”显然包含了关于如何有效利用eXtremeTable的相关指南,特别是...

    hibernate + extremetable 实现分页

    本教程将详细讲解如何使用Hibernate ORM框架结合ExtremeTable实现高效的分页查询。 Hibernate是一个强大的对象关系映射(ORM)框架,它允许开发者以面向对象的方式处理数据库操作,避免了直接编写SQL语句的繁琐。而...

    extremetable教程.pdf

    《eXtremeTable教程详解》 eXtremeTable是一款强大的开源JSP定制标签库,主要用于在Web应用中以表格形式展示数据。本教程详细介绍了eXtremeTable的配置、使用方法以及各种标签的功能,旨在帮助开发者充分利用其功能...

    eXtremeTable的使用方法

    我也刚开始看,感觉是个好东东,大家多多交流

    springmvc+hibernate+extremetable 数据库增删改查

    Spring MVC、Hibernate 和 ExtremeTable 是三个在Web开发中常见的技术框架,它们分别负责不同的职责,协同工作以实现高效的数据管理。下面将详细解释这三个技术及其在数据库增删改查中的应用。 Spring MVC 是一个...

    eXtremeTable使用指南

    ### eXtremeTable使用指南:深入理解与配置 #### 引言 eXtremeTable作为eXtremeComponents系列中的核心组件之一,专为高级数据展示而设计,尤其适用于表格形式的数据呈现。该开源项目由Jeff Johnston领导的ECCN...

    eXtremeComponents-1.0.4+extremetable使用手册+需要的jar包

    eXtremeTable分页控件完整例子包括了数据的分页、数据的Excel格式导出、数据的pdf电子书格式导出、数据的文本文件格式导出等功能,里面的源代码写得非常详细,好好看一下.... 功能强大,易于扩展的extremetable就是个...

    displayTag,extremeTable

    displayTag,extremeTable相关文章

    Extremtable使用手册(中文)

    **eXtremeTable 使用手册概述** eXtremeTable 是 eXtremeComponents 系列中的一个开源 JSP 定制标签库,专门用于以表格形式展示数据。该库致力于提供高效、灵活的表格展示功能,使得开发者可以轻松配置和定制表格。...

Global site tag (gtag.js) - Google Analytics