compound extreme_essential hypertension

compound extreme_essential hypertensioneXtremeComponents的eXtremeTable是一套很好的分页标签,比displayTag好多了。它使用jstl,所以与webwork,Struts,JSF集成也很方便,推荐大家用下面是我使用的例子:ec:table items=”users” var=”user” action=”” imagePath=”${ctx}/widgets/extremecomponent

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

eXtremeComponents的eXtremeTable是一套很好的分页标签,比displayTag好多了。它使用jstl,所以与webwork,Struts,JSF 集成也很方便,推荐大家用

下面是我使用的例子:

compound extreme_essential hypertension

compound extreme_essential hypertension

<
ec:table 
items
=”users”
 var
=”user”
 action
=””
 imagePath
=”${ctx}/widgets/extremecomponents/images/table/zh_CN/*.gif”
 cellpadding
=”1″
 title
=”用户名”
 
compound extreme_essential hypertension locale

=”zh_CN”
 rowsDisplayed
=”10″
>
 
compound extreme_essential hypertension     

<
ec:exportXls 
fileName
=”UserList.xls”
 tooltip
=”Export Excel”
/>

compound extreme_essential hypertension     

<
ec:exportPdf 
fileName
=”UserList.pdf”
 tooltip
=”输出PDF文件”
 headerColor
=”blue”
 headerBackgroundColor
=”blue”
 headerTitle
=”人员表”
/>
 
compound extreme_essential hypertension   

<
ec:exportCsv 
fileName
=”UserList.txt”
 tooltip
=”输出CSV文件”
 delimiter
=”|”
/>
 
compound extreme_essential hypertension
compound extreme_essential hypertension   

<
ec:row
>

compound extreme_essential hypertension    

<
ec:column 
property
=”rowcount”
 cell
=”rowCount”
 sortable
=”false”
 title
=” No.”
 width
=”50″
/>

compound extreme_essential hypertension    

<
ec:column 
property
=”username”
 title
=”姓 名”
 width
=”200″
/>

compound extreme_essential hypertension    

<
ec:column 
property
=”firstName”
  title
=”firstName”
 width
=”200″
/>

compound extreme_essential hypertension    

<
ec:column 
property
=”lastName”
  title
=”lastName”
 width
=”200″
/>

compound extreme_essential hypertension   

</
ec:row
>

compound extreme_essential hypertension  

</
ec:table
>

compound extreme_essential hypertension

Action

compound extreme_essential hypertension
import
 java.util.List;
compound extreme_essential hypertension

import
 javax.servlet.http.HttpServletRequest;
compound extreme_essential hypertension

import
 javax.servlet.http.HttpServletResponse;
compound extreme_essential hypertension

import
 org.apache.struts.action.ActionForm;
compound extreme_essential hypertension

import
 org.apache.struts.action.ActionForward;
compound extreme_essential hypertension

import
 org.apache.struts.action.ActionMapping;
compound extreme_essential hypertension

import
 com.ygsoft.propertyright.service.UserManager;
compound extreme_essential hypertension

import
 com.ygsoft.propertyright.webapp.util.BeanUtil;
compound extreme_essential hypertension
compound extreme_essential hypertensioncompound extreme_essential hypertension

public
 
class
 TestAction 
extends
 BaseAction 

{

compound extreme_essential hypertension    UserManager userManager 
= (UserManager)BeanUtil.getBean(userManager);
compound extreme_essential hypertension    
compound extreme_essential hypertension    
public ActionForward testPage(ActionMapping mapping, ActionForm form, 
compound extreme_essential hypertensioncompound extreme_essential hypertension            HttpServletRequest request, HttpServletResponse response) 
throws Exception {

compound extreme_essential hypertension        List users 
= getUsers();
compound extreme_essential hypertension        request.setAttribute(
users, users);
compound extreme_essential hypertension        
return mapping.findForward(test);
compound extreme_essential hypertension    }

compound extreme_essential hypertension
compound extreme_essential hypertensioncompound extreme_essential hypertension    
public List getUsers() throws Exception {

compound extreme_essential hypertension                 
return userManager.getUsers(null);    
compound extreme_essential hypertension                     }

compound extreme_essential hypertension}

              其中ecoAttrs是一个collection(List),放入pojo。action里面写你这个页面的访问方法(如我的页面是一个action,其他的如.do或者.jsp什么的都可以)。rowsDisplayed是默认显示条数,它可以自动实现分页。
下面的三个<ec:export>是导出三种格式用的,不用的话可以不写(写了需要在web.xml配置相应的filter)。
<ec:column>里面放属性,property指向pojo的相应属性,而title是表头显示的信息,这个标签需要用<ec:row>包起来(1.0.1 m4以后)

这里有一套中文图标:
http://tiny.51.net/extremecomponent/zh_CN.rar

web.xml配置

compound extreme_essential hypertension
<
filter
>
 
compound extreme_essential hypertension     

<
filter-name
>
eXtremeExport
</
filter-name
>
 
compound extreme_essential hypertension    

<
filter-class
>
 org.extremecomponents.table.filter.ExportFilter 
</
filter-class
>
 
compound extreme_essential hypertension

</
filter
>
 
compound extreme_essential hypertension
compound extreme_essential hypertension

<!–
 输出excel,pdf,csv的时候用 
–>

compound extreme_essential hypertension

<
filter-mapping
>
 
compound extreme_essential hypertension

<
filter-name
>
eXtremeExport
</
filter-name
>
 
compound extreme_essential hypertension

<
url-pattern
>
/*
</
url-pattern
>
 
compound extreme_essential hypertension

</
filter-mapping
>
 
compound extreme_essential hypertension
compound extreme_essential hypertension
compound extreme_essential hypertension

<!–
 其实这个配置可不要,已经在放在jar里面了loading的时候自动会加进来- 
–>

compound extreme_essential hypertension

<
taglib
>
 
compound extreme_essential hypertension

<
taglib-uri
>
/extremecomponents
</
taglib-uri
>
 
compound extreme_essential hypertension

<
taglib-location
>
/WEB-INF/tld/extremecomponents.tld
</
taglib-location
>

compound extreme_essential hypertension

<!–
tld拷贝到相应目录去-> 
compound extreme_essential hypertension</taglib> 
compound extreme_essential hypertension

中文问题

export里面的excel和pdf默认不支持中文,需要手工修改源码,excel的比较简单:
修改org.extremecomponents.table.view.XlsView.java(我指的是1.0.1-M4-A14的相应代码)
102行:
HSSFCell hssfCell = hssfRow.createCell(cellnum);
hssfCell.setEncoding(HSSFCell.ENCODING_UTF_16);(就是添加这一行)
122行:
HSSFCell cell = row.createCell(cellnum);
cell.setEncoding(HSSFCell.ENCODING_UTF_16);(就是添加这一行)
这个在使用UTF-8时工作正常。如果其他Unicode环境可以尝试HSSFCell.ENCODING_COMPRESSED_UNICODE。

编译后将对应.class放到WEB-INF/classes相应目录就可以了。

pdf view的比较麻烦,还没尝试,解决方法参照这个帖子:
http://extremecomponents.org/forum/viewtopic.php?t=139&highlight=chinese+filter
http://www-128.ibm.com/developerworks/cn/xml/x-ospdf/index.html

以使用Struts为例,说明一下如何使用eXtremeTable的分页特性

 

   这一切都可以在Action中完成,在Action会用到JSP中eXtremeTable的table标签的属性’tableId’ 和’item’,’tableId’用于完成eXtremeTable的分页,’item’用于返回你分页的结果集,不多不少,刚好是你需要查看的那一页的结果集,比如说,你一页是10条记录,那你访问第20页的时候,’item’的结果集就只有第201条到第210条记录.还有就是在request中加入totalRows的属性,表示本次查询结果的数量

另外,JSP的中,eXtremeTable的table标签要retrieveRowsCallback属性,将该属性设为 org.extremecomponents.table.callback.LimitCallback,这是它默认的分页回调类,你也可以写自已的回调类.设置了该默认的回调类以后,你在Action里就需要向request加入totalRows属性,值为你的查询结果总记录数,这样才会产生翻页的效果.

现在就你的DisplayAction中加分页的特性了,如下:

Limit limit = LimitFactory.createInstanceOfLimit(request, TABLEID);
LimitFactory.setLimitPageAndRowAttr(limit,PAGE_SIZE,TOTAL_SIZE);

这里的TABLEID就是JSP页上标签的属性tableId, PAGE_SIZE是你一页的记录数,TOTAL_SIZE是你查询数据的总数

然后设置totalRow属性,它的值被要求为Integer类型的,转换一下:

request.setAttribute(“totalRows”,new Integer(TOTAL_SIZE));

将分页后的结果集(一页的内容)放到request的resultList(此为JSP中item属性设置的值)属性中去:

request.setAttribute(“resultList”, getTestData(limit.getCurrentRowsDisplayed(),limit.getPage()));

上面得到分页数据的函数原形为getTestData(int pageSize,int paget),通过指定一页的记录数和第几页来获得所需的数据,这可以根据数据库的分页特性,或者通过滑动游标的方式来得到,这里不再傲述.

以下为部分代码:

JSP部分:

compound extreme_essential hypertension
<
ec:table
compound extreme_essential hypertension 

items
=”resultList”
 var
=”item”
 tableId
=”youTableId”

compound extreme_essential hypertension        retrieveRowsCallback

=”org.extremecomponents.table.callback.LimitCallback”

compound extreme_essential hypertension        filterRowsCallback

=”org.extremecomponents.table.callback.LimitCallback”

compound extreme_essential hypertension        sortRowsCallback

=”org.extremecomponents.table.callback.LimitCallback”

compound extreme_essential hypertension action

=”${pageContext.request.contextPath}/DisplayAction.do”

compound extreme_essential hypertension imagePath

=”${pageContext.request.contextPath}/images/table/*.gif”

compound extreme_essential hypertension title

=”TEST”

compound extreme_essential hypertension width

=”100%”

compound extreme_essential hypertension rowsDisplayed

=”10″

compound extreme_essential hypertension        sortable

=”false”

compound extreme_essential hypertension        filterable

=”false”

compound extreme_essential hypertension 

>

compound extreme_essential hypertension        

<
ec:column 
property
=”name”
 title
=”姓名”
/>

compound extreme_essential hypertension        

<
ec:column 
property
=”nickName”
 title
=”别名”
/>

compound extreme_essential hypertension

</
ec:table
>

 

Action部分代码:

compound extreme_essential hypertension
Limit limit 
=
 LimitFactory.createInstanceOfLimit(request, TABLEID);
compound extreme_essential hypertensionLimitFactory.setLimitFilterAndSortAttr(limit);
compound extreme_essential hypertensionLimitFactory.setLimitPageAndRowAttr(limit,PAGE_SIZE,TOTAL_SIZE);
compound extreme_essential hypertensionrequest.setAttribute(


resultList

,getTestData(limit.getCurrentRowsDisplayed(),limit.getPage()));
compound extreme_essential hypertensionrequest.setAttribute(


totalRows

,
new
 Integer(TOTAL_SIZE));

,标签里的rowDisplayed属性要和Action中的PAGE_SIZE一致,不然会有问题…

其他资源
extremecomponents 用AJAX:
http://extremecomponents.org/wiki/index.php/AJAX_enabled_eXtremeTable_Tutorial
extremecomponents Group:
http://groups.google.com:80/group/eXtremeComponents_CN
资源
http://www.blogjava.net:80/lucky/category/7508.html

ECSide发布地址:
1.1版本: http://fins.javaeye.com/blog/51068
1.0版本: http://fins.javaeye.com/blog/40190
ECSide圈子:
http://ecside.javaeye.com/
ECSide综合讨论专用帖
http://fins.javaeye.com/blog/48723
官方网站
http://www.extremecomponents.org

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/171295.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java中经常使用的日期格式化(全)「建议收藏」

    java中经常使用的日期格式化(全)

    2022年2月2日
    34
  • LoadRunner教程(1)-LoadRunner简介与安装

    LoadRunner教程(1)-LoadRunner简介与安装LoadRunner,是一种预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试。企业使用LoadRunner能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。LoadRunner可适用于各种体系架构的自动负载测试,能预测系统行为并评估系统性能。下载及其安装过程参照如下,记住安装成英文…

    2022年5月23日
    37
  • 国外常用的免费DNS域名解析服务器「建议收藏」

    国外常用的免费DNS域名解析服务器「建议收藏」在国内注册的域名默认使用的是国内域名注册商提供的DNS服务器,国内的DNS服务器可能受政策的影响停止解析域名,网络上传说以后没有BeiAn的域名国内将不给解析。为了避免国内的这些政策,建议使用国外的域名服务:如果您还没有注册域名,请不要在国内注册域名。如果您已经在国内注册了域名,但由于国内注册商赖皮,不给您转移密码,您还可以使用国外的免费DNS服务器。国外免费DNS

    2022年6月22日
    184
  • pvp还是pve_阿特拉斯PVP好玩还是pve

    pvp还是pve_阿特拉斯PVP好玩还是pve今天组内同事分享了PVE和PVP这两种游戏中常见的战斗模式,引起了我对这两种模式的兴趣。结合分享的内容以及网络上的资料,现在来谈谈这两种战斗模式的区别。首先我们来看看他们的定义:PVE:PlayerVSEnvironment,指的是玩家与系统之间的互动。通过字面意思其实很容易理解,PVE指的是玩家挑战系统程序所控制的NPC怪物和boss,从而…

    2022年10月23日
    0
  • mac安装wget命令_安装mac系统

    mac安装wget命令_安装mac系统wget是一个从网络上自动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理。“wget”这个名称来源于“WorldWideWeb”与“get”的结合。所谓自动下载,是指wget可以在用户退出系统的之后在继续后台执行,直到下载任务完成。Mac安装wget官网下载包wget1.8.tar.gz包:http://ftp.gnu.org/gnu/wget/解压到想安装的路径打开终端进入wget解压的路径依次执

    2022年10月16日
    0
  • Pikachu-XXE「建议收藏」

    Pikachu-XXE「建议收藏」0x00XXE-“xmlexternalentityinjection”既”xml外部实体注入漏洞”。概括一下就是”攻击者通过向服务器注入指定的xml实体内容,从而让服务器按照指定的配置进行执行,导致问题”也就是说服务端接收和解析了来自用户端的xml数据,而又没有做严格的安全控制,从而导致xml外部实体注入。现在很多语言里面对应的解析xml的函数默认是禁止解析外部实体内容的,从…

    2022年5月24日
    30

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号