- 浏览: 741503 次
- 性别:
- 来自: 郑州
文章分类
- 全部博客 (396)
- JAVA (50)
- ORACLE (22)
- HIBERNATE (1)
- SPRING (26)
- STRUTS (4)
- OTHERS (0)
- MYSQL (11)
- Struts2 (16)
- JS (33)
- Tomcat (6)
- DWR (1)
- JQuery (26)
- JBoss (0)
- SQL SERVER (0)
- XML (10)
- 生活 (3)
- JSP (11)
- CSS (5)
- word (1)
- MyEclipse (7)
- JSTL (1)
- JEECMS (2)
- Freemarker (8)
- 页面特效 (1)
- EXT (2)
- Web前端 js库 (2)
- JSON http://www.json.org (3)
- 代码收集 (1)
- 电脑常识 (6)
- MD5加密 (0)
- Axis (0)
- Grails (1)
- 浏览器 (1)
- js调试工具 (1)
- WEB前端 (5)
- JDBC (2)
- PowerDesigner (1)
- OperaMasks (1)
- CMS (1)
- Java开源大全 (2)
- 分页 (28)
- Eclipse插件 (1)
- Proxool (1)
- Jad (1)
- Java反编译 (2)
- 报表 (6)
- JSON (14)
- FCKeditor (9)
- SVN (1)
- ACCESS (1)
- 正则表达式 (3)
- 数据库 (1)
- Flex (3)
- pinyin4j (2)
- IBATIS (3)
- probe (1)
- JSP & Servlet (1)
- 飞信 (0)
- AjaxSwing (0)
- AjaxSwing (0)
- Grid相关 (1)
- HTML (5)
- Guice (4)
- Warp framework (1)
- warp-persist (1)
- 服务器推送 (3)
- eclipse (1)
- JForum (5)
- 工具 (1)
- Python (1)
- Ruby (1)
- SVG (3)
- Joda-Time日期时间工具 (1)
- JDK (3)
- Pushlet (2)
- JSP & Servlet & FTP (1)
- FTP (6)
- 时间与效率 (4)
- 二维码 (1)
- 条码/二维码 (1)
最新评论
-
ctrlc:
你这是从web服务器上传到FTP服务器上的吧,能从用户电脑上上 ...
jsp 往 FTP 上传文件问题 -
annybz:
说的好抽象 为什么代码都有两遍。这个感觉没有第一篇 和第二篇 ...
Spring源代码解析(三):Spring JDBC -
annybz:
...
Spring源代码解析(一):IOC容器 -
jie_20:
你确定你有这样配置做过测试? 请不要转载一些自己没有测试的文档 ...
Spring2.0集成iReport报表技术概述 -
asd51731:
大哥,limit传-1时出错啊,怎么修改啊?
mysql limit 使用方法
应用displaytag在struts中完成大数据量分页显示,Oracle 数据库
JSP文件:
<%
@
taglib uri
=
"
/WEB-INF/displaytag.tld
"
prefix
=
"
disp
"
%>
< disp:table name ="resultList" export ="true" pagesize ="100" requestURI ="logQueryAction.do" sort ="external" id ="element" partialList ="true" size ="resultSize" >
< disp:column property ="operdate" title ="操作时间" ></ disp:column >
< disp:column property ="pername" title ="操作人员" ></ disp:column >
< disp:column property ="opertype" title ="操作类型" ></ disp:column >
</ disp:table >
...
< disp:table name ="resultList" export ="true" pagesize ="100" requestURI ="logQueryAction.do" sort ="external" id ="element" partialList ="true" size ="resultSize" >
< disp:column property ="operdate" title ="操作时间" ></ disp:column >
< disp:column property ="pername" title ="操作人员" ></ disp:column >
< disp:column property ="opertype" title ="操作类型" ></ disp:column >
</ disp:table >
...
name="resultList" 将记录集存在session或者request中的键值
export="true" 是否显示导出选项
pagesize="100" 每页显示100条数据
requestURI="logQueryAction.do" struts中action的名称,如果记录少,可以直接分页
sort="external" 外部排序
id="element" 表格id值,用于程序得相关的参数
partialList="true" 分段从数据库中读数据
size="resultSize" 记录的总条数,用于计算总页数
struts action:
String pageIndexName
=
new
org.displaytag.util.ParamEncoder(
"
element
"
).encodeParameterName(org.displaytag.tags.TableTagParameters.PARAMETER_PAGE);
// 页数的参数名
int pageSize = 100 ; //每页显示的条数
int pageIndex = GenericValidator.isBlankOrNull(request.getParameter(pageIndexName)) ? 0 :(Integer.parseInt(request.getParameter(pageIndexName)) - 1 ); //当前页数
String sqlCount = " select count(*) from user_log a " ; //用于统计总记录数的sql语句
String sql = " select * from (select rownum as rid, t1.* from (select b.pername as pername,to_char(a.operdate,'yyyy-mm-dd hh24:mi:ss') as operdate, " +
" decode(a.opertype,'D','删除','M','修改','其他') as opertype, a.hphm as hphm from user_log a, " +
" (select asuser.userid as userid,nvl(asempmsg.pername,asuser.loginname) as pername from asuser,ASEMPMSG where asuser.perid=ASEMPMSG.perid(+)) b " +
" where a.userid=b.userid " ; //查询语句
int pageSize = 100 ; //每页显示的条数
int pageIndex = GenericValidator.isBlankOrNull(request.getParameter(pageIndexName)) ? 0 :(Integer.parseInt(request.getParameter(pageIndexName)) - 1 ); //当前页数
String sqlCount = " select count(*) from user_log a " ; //用于统计总记录数的sql语句
String sql = " select * from (select rownum as rid, t1.* from (select b.pername as pername,to_char(a.operdate,'yyyy-mm-dd hh24:mi:ss') as operdate, " +
" decode(a.opertype,'D','删除','M','修改','其他') as opertype, a.hphm as hphm from user_log a, " +
" (select asuser.userid as userid,nvl(asempmsg.pername,asuser.loginname) as pername from asuser,ASEMPMSG where asuser.perid=ASEMPMSG.perid(+)) b " +
" where a.userid=b.userid " ; //查询语句
//构造查询条件
StringBuffer sb = new StringBuffer();
if (logQueryForm.getCzrqStart() != null && ! "" .equals(logQueryForm.getCzrqStart())) {
sb.append( " and a.operdate > to_date(' " + logQueryForm.getCzrqStart() + " ','yyyy-mm-dd') " );
}
if (logQueryForm.getCzrqEnd() != null && ! "" .equals(logQueryForm.getCzrqEnd())) {
sb.append( " and a.operdate <= to_date(' " + logQueryForm.getCzrqEnd() + " ','yyyy-mm-dd') " );
}
if (logQueryForm.getCzlx() != null && ! "" .equals(logQueryForm.getCzlx())) {
sb.append( " and a.opertype = ' " + logQueryForm.getCzlx() + " ' " );
}
if (logQueryForm.getCzry() != null && ! "" .equals(logQueryForm.getCzry())) {
sb.append( " and a.userid = ' " + logQueryForm.getCzry() + " ' " );
}
sqlCount += sb.toString();
sql += sb.toString() + " order by a.operdate desc) t1 where rownum<= "
+ (pageIndex + 1 ) * pageSize + " ) t2 where t2.rid> " + pageIndex * pageSize; //分页读取语句
// System.out.println(sb.toString());
DBBean db = new DBBean();
ResultSet rs = null ;
PreparedStatement prep = null ;
try {
List resultList = db.getResultList(sql); //将ResultSet保存在List里返回
request.setAttribute( " resultList " ,resultList); //把结果存入request
prep = db.getConnection().prepareStatement(sqlCount);
rs = prep.executeQuery();
if (rs.next()) ... {
request.setAttribute( " resultSize " , new Integer(rs.getInt( 1 ))); //将总记录数保存成Intger实例保存在request中
}
}
catch (Exception ex) {
ex.printStackTrace();
}
finally {
if (db != null ) ... {
db.closeConnection(); //关闭连接
}
} ... ... ... ... ... ... ...
StringBuffer sb = new StringBuffer();
if (logQueryForm.getCzrqStart() != null && ! "" .equals(logQueryForm.getCzrqStart())) {
sb.append( " and a.operdate > to_date(' " + logQueryForm.getCzrqStart() + " ','yyyy-mm-dd') " );
}
if (logQueryForm.getCzrqEnd() != null && ! "" .equals(logQueryForm.getCzrqEnd())) {
sb.append( " and a.operdate <= to_date(' " + logQueryForm.getCzrqEnd() + " ','yyyy-mm-dd') " );
}
if (logQueryForm.getCzlx() != null && ! "" .equals(logQueryForm.getCzlx())) {
sb.append( " and a.opertype = ' " + logQueryForm.getCzlx() + " ' " );
}
if (logQueryForm.getCzry() != null && ! "" .equals(logQueryForm.getCzry())) {
sb.append( " and a.userid = ' " + logQueryForm.getCzry() + " ' " );
}
sqlCount += sb.toString();
sql += sb.toString() + " order by a.operdate desc) t1 where rownum<= "
+ (pageIndex + 1 ) * pageSize + " ) t2 where t2.rid> " + pageIndex * pageSize; //分页读取语句
// System.out.println(sb.toString());
DBBean db = new DBBean();
ResultSet rs = null ;
PreparedStatement prep = null ;
try {
List resultList = db.getResultList(sql); //将ResultSet保存在List里返回
request.setAttribute( " resultList " ,resultList); //把结果存入request
prep = db.getConnection().prepareStatement(sqlCount);
rs = prep.executeQuery();
if (rs.next()) ... {
request.setAttribute( " resultSize " , new Integer(rs.getInt( 1 ))); //将总记录数保存成Intger实例保存在request中
}
}
catch (Exception ex) {
ex.printStackTrace();
}
finally {
if (db != null ) ... {
db.closeConnection(); //关闭连接
}
} ... ... ... ... ... ... ...
其中的页面导航是英文的,只要修改org.displaytag.properties.TableTag.properties配置文件就可以把 英文改成中文。同时还可以指定导出文件的类型以及文件名。
export.excel
=
true
export.excel.label = <span class = " export excel " >Excel </span>
export.excel.include_header = true
export.excel.filename = export.xls
export.excel.label = <span class = " export excel " >Excel </span>
export.excel.include_header = true
export.excel.filename = export.xls
如果不指定文件名,在点击导出excel的时候,就会在ie窗口中打开excel文件。很烦人!
指定文件名后就可以选择保存和打开了。
这个问题在1.1好象已经解决,display会默认以table的名字做为excel文件的名称。
发表评论
-
displaytag 中文解决
2010-04-10 00:03 2272希望总在你想放弃的前一刻到来,这就算是对坚持的犒赏吧 ... -
扩展displaytag标签库
2010-04-09 11:28 1047下面是本人参考该URL扩展了下displaytag的标签库: ... -
extremeTable
2010-04-01 15:49 923extremeTable,又一个开源taglib ext ... -
extremeTable
2010-04-01 15:33 20960.概述 Home Pag ... -
【转】 在模板中分页,看Freemarker和 displaytag的结合
2010-04-01 14:46 2027Displaytag是一个很好的分页标签,它支持数据库端分页( ... -
displaytag1.1调用mssqlserver存储过程进行分页从数据库提取数据
2010-04-01 14:43 910原官方网http://displaytag.sourcef ... -
displaytag.properties
2010-04-01 14:01 2184displaytag.properties文件位于displa ... -
displaytag组件实现分页_DisplayTag应用指南_ DisplayTag七宗罪 _displaytag之中文(乱码)解决方案
2010-04-01 13:42 1779DisplayTag 应用指南 【摘 ... -
displaytag标签的使用手册
2010-04-01 13:39 14851.可以给它加上样式等 ... -
DisplayTag简单使用配置翻页
2010-04-01 13:36 1483首页http://displaytag.sourceforge ... -
displaytag标签 浅析
2010-04-01 13:25 1006DisplayTag是一个非常好用的表格显示标签,适合MVC模 ... -
displaytag.css文件中常用的样式说明及修改
2010-04-01 11:01 2667displaytag.css文件中常用的样式说明及修改 1. ... -
displaytag标签的常用属性和方法
2010-04-01 10:59 16631.可以给它加上样式等,也可以定义显示的列 ... -
在Struts2中使用DisplayTag翻页时的ognl.InappropriateExpressionException解决方案
2010-03-31 18:09 2052在struts2中使用displayTag组件进行翻页 ... -
Display Tag使用小记
2010-03-31 14:33 816... -
Struts中使用displaytag简单小教程
2010-03-31 14:26 1082... -
应用displaytag完成大数据量分页显示的例子
2010-03-31 14:23 1201应用displaytag在struts中完成大数据量分页显示, ... -
pager-taglib的安装和使用
2010-03-31 14:21 838... -
pager标记库(分页显示)详解
2010-03-31 14:19 1396一简介, Pager-taglib,支持多种风格的 ... -
displaytag与struts标签间的交互
2010-03-31 14:17 1342不知道为什么,在<display:table> ...
相关推荐
Struts2整合DisplayTag 实现分页技术
Struts2结合DisplayTag框架进行分页案例 有建表脚本 适合初学者
DisplayTag分页及属性
Displaytag实现分页
displaytag 一个后台管理的分页组件,非常好用,代码量少
补充: csdn附件不能修改,jsp+servlet分页时有bug,请注意查询所有的serlvet不支持带参数,即显示所有的请求写在独立的serlvet中 第二种解决方案,一张表的增删查改都在一个serlvet中通过带参数进行流程处理,比如:...
Struts2+displaytag+dbutil 可运行完整web工程 jdk1.6、1.7 tomcat6.0
NULL 博文链接:https://wooden-baby.iteye.com/blog/494060
displaytag分页模版资料非常详细 displaytag分页模版资料非常详细 displaytag分页模版资料非常详细
该文档里面详细说明在我们使用displaytag标签的时候,在表格的页脚显示一个当前界面显示多少条的动态改变(这个是和[第1-10项 共19项] [首页/上页]1, 2[下页/尾页] [显示条数]显示在一行的),table会根据当前选择的数据...
display tag 分页例子中用到的有关display tag lib的jar包,把这些jar包拷贝到WEB-INF/lib中例子就可以运行了。 博文链接:https://zhou568xiao.iteye.com/blog/192366
displaytag1.1显示排序分页导出自动标签
DAO模式与分页显示,提供displaytag,pager-taglib 分页查询
用于解决,displaytag的中文显示问题
DisplayTag是个很好的jsp标签,目前最新版本为1.2,支持了自定义分页,解决了之前版本每次查询都把全部数据查出的低效率做法。但是DisplayTag默认是通过url传参,以及分页导航不灵活给人们带来了不少麻烦。鉴于此...
个人学习收集网上资料辛苦整理而成. DisplayTag分页资料整理.chm DisplayTag 分页 chm java taglib
jsp分页利器,displaytag做项目时使用的,自己总结的一些使用说明!
displaytag分页模版
经典而且好用的分页组件,displaytag使用简单,功能强大!