论坛首页 Java版 企业应用

E3新成员 E3.Table 0.5 发布

浏览 1767 次
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
时间:2008-03-15 关键字: table
E3.Table是E3平台下一个用于构造Table视图的组件,现在这个版本的主要功能:
1. 提供排序功能,点击列名,可以实现升序或降序排列
2. 能够对大数据进行分页显示,可以设置每页记录数
3. 支持表头分组
4. 能够记录翻页、排序状态,当从列表页面跳转到编辑等页面后,再跳转回来,能够自动恢复到之前的状态.
5. 支持Collection,Map,Array,Enum和Iterator等多种数据类型
6. 支持皮肤派生的概念,也就是说要自定义皮肤不需要从头开始,只需要选择一个已有的皮肤为基础,进行些属性定义即可.注意:用户不需要懂得css那些.

请登陆E3主页 http://ie3.googlecode.com/ 下载下面文件
E3.Table.src-0.5.rar 源代码
E3.Table.dist-0.5.rar jar包
e31.3.war 样例系统
E3Table参考手册[0.5].doc E3Table参考手册
   
时间:2008-03-16
E3.Table 截图
  • 645eb734-2c34-36de-93ef-f452a2fb51c4-thumb
  • 描述: E3.Table 截图
  • 大小: 71.6 KB
   
0 请登录后投票
时间:2008-03-16

简介

E3.TableE3平台下一个用于构造Table视图的组件,现在这个版本的主要功能:1.        提供排序功能,点击列名,可以实现升序或降序排列2.        能够对大数据进行分页显示,可以设置每页记录数3.        支持表头分组4.        能够记录翻页、排序状态,当从列表页面跳转到编辑等页面后,再跳转回来,能够自动恢复到之前的状态.5.        支持Collection,Map,Array,EnumIterator多种数据类型6.        支持皮肤派生的概念,也就是说要自定义皮肤不需要从头开始,只需要选择一个已有的皮肤为基础,进行些属性定义即可.注意:用户不需要懂得css那些.  

鸣谢

感谢E3群里所有兄弟们(怕遗漏了名字,不一一致谢).感谢jsf,jstl,displaytag, valuelist,xkinsjmesa的贡献者,E3.Table 借鉴了这些优秀作品的大量设计. 有的甚至直接挪用.

系统要求

JDK1.4X 或者以上版本

TOMCAT5.X (其他未测试)

样例部署

e3.war 放到Tomcat's webapps 目录下,启动服务器,输入地址http://localhost:8080/e3 进入示例主页. 点级 E3.Table 连接,即可看到示例程序.

 

使用

Lib文件清单

文件名

版本

说明

E3-Table.jar

0.1

E3平台的Table

E3-TemplateEngine.ja

1.0

E3平台的模板引擎Adapter

commons-logging.jar

1.04

Apachecommons log,

log4j-1.2.14.jar

1.2.14

Apachelog4j

commons-collections-3.2

3.2

Apachecollections

velocity-1.4.jar

1.4

Apache的模板引擎

commons-beanutils-bean-collections.jar

1.6

Apachecollections包,

commons-beanutils-core.jar

1.6

ApacheBeanUtils包,用与实现通用排序

commons-lang.jar

2.1

Apache的工具类

   
 

  

添加JARclasspath

新建一个web项目,Lib文件清单中的jar全部添加到classpath

页面

新建文件Table.jsp,文件内容

<%@ taglib prefix="e3t" uri="/e3/table/E3Table.tld" %><%@ page contentType="text/html; charset=utf-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD><META http-equiv=Content-Type content="text/html; charset=utf-8"></HEAD><BODY>  <%  net.jcreate.e3.table.test.TestList tests = new net.jcreate.e3.table.test.TestList(10, false);  request.setAttribute("tests", tests);%><e3t:table id="testTable"           items="tests"           caption="测试"          >    <e3t:column property="id"    />              <e3t:column property="name" title="用户名称" />                <e3t:column property="email"      title="电子邮件" />                    <e3t:column property="status"      title="状态" />                        <e3t:column property="description"   title="描述" /></e3t:table>           </BODY></HTML>  
 

测试

web项目部署到Tomcat's webappstest目录

输入地址 http://localhost:8080/test/Table.jsp 如果看到table,恭喜你成功了! 有问题到QQ: 21523645

 具体用法看样例。

显示单元格值

最简单办法就是

<e3t:column property="userName" title="用户名称" /> 2种方式就是在column里面嵌套其它标签或者jsp代码  <e3t:column property="sex"      title="性别" >                             <c:choose>               <c:when test="${user.sex == 1}">                                  </c:when>               <c:when test="${user.sex == 0}">                                  </c:when>               <c:otherwise>                   没填               </c:otherwise>             </c:choose>  </e3t:column> 

URL 修饰器

修饰器通常用于格式化单元格的值,如:日期格式化,数字格式化等,目前只提供了url修饰器,用于显示 emailhttp,httpsftp地址.

    <e3t:column property="email"      title="电子邮件" >      <e3t:decorator cls="url" /></e3t:column>         下面的电子邮件是经过url修饰器处理的效果.        

保存业务参数

当进行翻页,排序处理说,通常需要把业务参数也记录下来.如:查询模块时,在翻页排序时,要把用户输入的查询条件记录下来,这个时候就要使用<e3t:param> 标签.(e3t:parame3.table的子标签)

<e3t:param name=”参数名” value=”参数值”/>

如:

<e3t:param name="skin" value="${param.skin}"/>  

设置单元格样式

单元格的数据默认是居中显示的,当你需要改变单元格样式时,可以设置columnstyle属性

<e3t:column property="remark"   title="备注" style="text-align:left" />

表头分组

<e3t:group>用来对column进行分组处理,分组方法比较简单,将同一组的东西,放到相同的group里面即可.

    <e3t:group title="基础信息" >                <e3t:column property="id"    />                <e3t:column property="name"  title="用户名称" /></e3t:group>表头分组效果: 

显示记录序号

<e3t:table id="testTable"           items="tests"           caption="用户列表"           varStatus="testStatus"          >                <e3t:column property="no"      title="序号" sortable="false">        ${testStatus.count}      </e3t:column>               

</e3t:table>

说明:

1.      因为no是个虚拟列,并不存在,所以不能支持排序,为此请设置sortable的值为false(禁止排序)2.      varStatus用来指定存储跌代对象(LoopTagStatus)key序号效果图: 

设置行样式

   <e3t:attribute><e3t:row>配合使用,可以设置行的样式. <e3t:row>     <c:if test="${testStatus.odd}">        <e3t:attribute name="style” value="background-color:#CCCCFF"/>      </c:if>  </e3t:row>效果图:

 

 

添加行事件

<e3t:attribute><e3t:row>配合使用,可以设置行事件.   <e3t:row>    <e3t:attribute name="onmouseover" value="this.style.backgroundColor = '#CCCCFF'"/>      <e3t:attribute name="onmouseout" value="this.style.backgroundColor = ''"/>  </e3t:row>  

Taglib说明

Table

属性

必填

类型

备注

id

String

表格id,表格唯一标识符号

items

String

集合元素key,根据这个key获取集合元素对象.

集合对象可以是Collection,Map,Array,EnumIterato或者DataModel其中任何一种

var

String

变量名,用于存储当前跌代元素

varStatus

String

跌代状态名,用于存储当前跌代状态变量

uri

String

如果要进行翻页,排序处理时,需要设置这个uri,就是用于处理翻页、排序的连接.

skin

String

皮肤名称,所有的皮肤在web应用的e3/table/skins目录下.目前支持的皮肤有E3001,E3001_001,E3001_002,E3001_003,默认皮肤是E3001

 



-
   
0 请登录后投票
时间:2008-03-16
格式乱了,还是自己到e3主页下载吧
   
0 请登录后投票
时间:2008-03-16
对打印的支持如何?
   
0 请登录后投票
时间:2008-03-17
打印这块没有
   
0 请登录后投票
时间:2008-03-19
e3演示站点
http://www.javae3.com/
   
0 请登录后投票
时间:2008-03-20
这种东西老早就有开源的项目了,不好,性能上用问题.
   
0 请登录后投票
时间:2008-03-20
支持数据库分页的,不过我还没放例子上去:)
   
0 请登录后投票
论坛首页 Java版 企业应用

跳转论坛:
JavaEye推荐