我在一个MIS系统开发项目组,是一个带项目经理在内只有4个人的小组。我们使用display tag来生成表格。 displaytag功能比较完善,它具有分页和页码栏的功能。我们没有使用它的分页功能,因为这种分页不是在数据库查询层面的,所以数据库没有减轻丝毫的负担。
所以我们只让displaytag为我们显示数据和生成页码栏,而由我们自己编码来处理数据的分页。以下就是displaytag的属性设置。
<display:table id="question"
name="questionPage.list"
class="its"
size="questionPage.count"
partialList="true" pagesize="questionPage.pageSize"
requestURI="/question/questionQueryAction.do?method=query">
partialList这个属性就是告诉displaytag不使用它的分页功能。
页码栏页号参数都由displaytag生成,为了获取这个页号,必须知道它的参数名,这是displaytag根据id属性生成的,要得到它必须使用displaytag库中的API。以下是一个可以根据id来获得参数名的函数。
protected String getPageParamName(String id){
return new org.displaytag.util.ParamEncoder(id).
encodeParameterName(org.displaytag.tags.TableTagParameters.PARAMETER_PAGE);
}
有了参数名,就可以通过request.getparameter来获得页码了,之后的分页查询就可以做了。
使用displaytag的页码,也有其局限性。你必须保证页码参数必须以parameter的形式存在于request中。所以如果你想改变页码的话,对页码的控制逻辑一定要在IE里用JS来做,一旦到了server端,就无法改变了,因为parameter是不能改变的。
在表格中会有一些翻页的链接,这些连接会由displaytag自动生成,除了页码等参数外,还会把所有request中的parameter统统加入到URL中去。所以看到的URL会是这样的。
http://localhost:8080/question/questionQueryAction.do?keyword=&beginDate=2006-08-21
&products=&sort1=all&endDate=2006-08-23&d-4031840-p=2
&business=all&method=query&method=query&keywordType=V1
其中只有d-4031840-p=2是displaytag自己的,它是传递页码的参数。其它都是request中的参数,有些是查询参数,有些是和dispatchaction有关的参数。这样很有好处,特别是在做查询页面的时候,这些参数都是很有用的。
但是,如果遇到不需要的参数,也将不可避免的被加进去,通常是无害的,但有时是会致命的。有一次,我用表单上传一段文字,结果也被加到了URL里面,这编文章很长,而且是有HTML格式的,这最终导致链接无法使用。为了去掉这些没用的参数,可以使用displaytag的一个属性。如下:
excludedParams="id baseCode baseCode1 baseCode2 itemCode subDate aboutUser aboutProduct subjectTitle subjectContent"
把不要的参数统统列出来,用空格搁开就可以了。
总之,displaytag功能比较完善,但是也有一些局限——毕竟不是你自己编的代码嘛!——有时需要一些额外的工作,才能让它很好的为你工作。
分享到:
相关推荐
display tag 分页实例,里面lib下有所需的jar包
display tag使用的一些说明,一些使用技巧
NULL 博文链接:https://zhiyongliu.iteye.com/blog/1723026
display tag使用总结文档,都是doc类型的。
display tag 标签 直接导入到myeclipse中就可以学习使用了.
Display tag library 1.1.1下载 用于表格美观显示需要的文件 displaytag-1.1.1-bin.zip 也可以自己到 http://sourceforge.net/project/showfiles.php?group_id=73068<br>直接下载
Display Tag使用
总结网络中Display Tag使用,非常经典,帮助你学习和了解displaytag
Display_Tag,一个很不错的开源列表组件,下面是我整理的使用小记。
java 分页显示,一个很好的表格显示框架.
Allegro软件参数设置中Display面板参数的含义
在ModelSim中运用display
displaytag-1.2-bin.zip displaytag-1.2-src.zip display-tag.rar
Android板实现双屏显示,DisplayManager和Display的使用,无须引入其他框架。只需调用原生谷歌类即可
linux中安装oracle11g时display设置
Display Port 2.0 Spec
NULL 博文链接:https://jhaij.iteye.com/blog/267491
DisplayPort1.4将支持 8K 分辨率的信号传输,兼容 USB Type-C 接口。从本次更新的技术参数可以看到,这次的eDP 1.4a接口在显示适配器及显示器之间提供4条HBR3高速通道,单通道带宽达到了8.1Gbps,这些通道可独立运行...