??xml version="1.0" encoding="utf-8" standalone="yes"?>日韩精品一区二区三区,91精品福利,97se国产在线视频http://www.aygfsteel.com/ftqiuqiu/category/32268.html猫和球的故事zh-cnThu, 19 Jun 2008 03:43:53 GMTThu, 19 Jun 2008 03:43:53 GMT60Display Tag使用记http://www.aygfsteel.com/ftqiuqiu/articles/208875.html球球球球Wed, 18 Jun 2008 06:58:00 GMThttp://www.aygfsteel.com/ftqiuqiu/articles/208875.htmlhttp://www.aygfsteel.com/ftqiuqiu/comments/208875.htmlhttp://www.aygfsteel.com/ftqiuqiu/articles/208875.html#Feedback0http://www.aygfsteel.com/ftqiuqiu/comments/commentRss/208875.htmlhttp://www.aygfsteel.com/ftqiuqiu/services/trackbacks/208875.html用了一D|间的Display TagQ觉得非常好用,可在论坛上发现好像用这个东东的人挺的Q那偶也来写文章?br /> Display Tag Lib是一个标{ֺQ用来处理JSP|页上的TableQ功能非常强Q可以对的Tableq行分页、数据导出、分l、对列排序等{,反正我在做项目时需要的功能它都l我提供了,而且使用h非常的方ѝ能够大大减代码量?br /> 介个是Display Tag的官方网站http://displaytag.sourceforge.net?br />
首先当然是要下蝲它的jar包了Q这里可以下载到最新的版本。将jar包放到Web-INF的lib文g夹下。另外还需要两个辅助包Qapache的commons-lang和standard包,更多的辅助包可以在这里下载?br />
在Web.XML下添加一个filter
<filter>
<filter-name>exportFilter</filter-name>
<filter-class>org.displaytag.filter.ResponseOverrideFilter</filter-class>
</filter>

在JSP面做一个引用:(x)
<%@ taglib uri="http://displaytag.sf.net/el" prefix="display" %>

首先我们定义一个list
<%
List test = new ArrayList( 6 );
test.add( "Test String 1" );
test.add( "Test String 2" );
test.add( "Test String 3" );
test.add( "Test String 4" );
test.add( "Test String 5" );
test.add( "Test String 6" );
request.setAttribute( "test", test );
%>

当我们想在jsp面上显C个listӞ我们只需要写一句话
<display:table name="test" />
display tag?x)自动生成一个table

如果list是从控制层抛出来的,name可用EL表达式表C?br /> <display:table name="${test}" />

q是最单的display tag的用,我们可以l它加上样式{,也可以定义显C的列,下面的table昄复杂一?br /> <display:table name="test" styleClass="list" cellspacing="0" cellpadding="0">
<display:column property="id" title="ID" class="idcol"/>
<display:column property="name" />
<display:column property="email" />
<display:column property="description" title="Comments"/>
</display:table>

如果惌l它加个链接也很?下面的代码给name加了q接Qƈ附带id参数Qemail也自动连接到mailto:XXX
<display:table name="test" styleClass="list" cellspacing="0" cellpadding="0">
<display:column property="id" title="ID" class="idcol"/>
<display:column property="name" url="detail.jsp" paramId="id" paramProperty="id"/>
<display:column property="email" autolink="true"/>
<display:column property="description" title="Comments"/>
</display:table>

下面介绍几个Display最常用的功能,更多功能请参考http://displaytag.homeip.net/displaytag-examples-1.1/?br /> 1. 分页
如果惛_代码分页Q只需在display:table标签中添加一pagesize="每页昄行数"Q如
<display:table name="test" pagesize="10"/>

2. 对列排序
display tag可对列进行排序,是点击列名Q对该列的数据进行排序。你只需Ҏ(gu)要排序的列添?sort="true" O(jin)KQ如下面的代码可对前三列q行排序。在display:table中添加defaultsort="列数"Q可默认Ҏ(gu)定的列排序?br /> <display:table name="test" styleClass="list" cellspacing="0" cellpadding="0" defaultsort="1">
<display:column property="id" title="ID" class="idcol" sort="true"/>
<display:column property="name" url="detail.jsp" paramId="id" paramProperty="id" sort="true"/>
<display:column property="email" autolink="true" sort="true"/>
<display:column property="description" title="Comments"/>
</display:table>
如果table有分,Display Tag默认只对当前进行排序,如果惛_整个list排序Q可以在display:table之间d一D代码:(x)
<display:setProperty name="sort.amount" value="list"/>

3. 导出数据
在display:table中添加export="true"Q看看会(x)出现什么!Display Tag默认?x)提供三U数据导出方式:(x)CSV、Excel、XML ?br /> 另外Display Tagq可以导Zؓ(f)PDF格式Q在http://prdownloads.sourceforge.net/itext/下蝲一个辅助包iText.jarQcopy到l(f)ib目录下,然后在display:table之间d一D代码:(x)
<display:setProperty name="export.pdf" value="true"/>Q大功告成?/p>

4. Display Tag的属性设|?br /> 前面所说的display:setProperty 是一U改变Display Tag属性的Ҏ(gu)Q但是在每个jsp中都要写太麻烦了?br /> Display Tag中设|了很多默认的属性,它有一个专门的属性文Ӟ是在它的jar包中的displaytag/properties/TableTag.properties惌改变它的默认属性,我们可以在WEB-INF\classes下新Z个文件displaytag.propertiesQ仿照TableTag.properties中属性的格式讄需要修改的属性?
TableTag.properties中的# messages中设|的是显C在面上的提示信息。默认是英文的,我们可以把它改ؓ(f)中文的。不q这里只能用unicodeQ就是说中文字符必须转换为unicode码,q个可以使用JDK自带的native2ascii.exeq行转换?

 

5. 其它功能
DisplayTagq有一些很实用的小功能Q这里提两个。一个是Ҏ(gu)据的FormatQ这?.1版本d的新功能Q可以用标{方式格式化时间、数字、字W串。比如日期,在需要格式化的column标签中添加format="{0,date,yyyy-MM-dd}"Q第一个参Cؓ(f)格式化的数据序号Q第二个参数是数据类型,数字为numberQ第三个参数为数据格式?br /> 另外一个功能是对table数据的合计功能。在table标签中添?decorator="org.displaytag.decorator.TotalTableDecorator"Q然后在惌q行合计的数据列的column标签中添?total="true"Q该列就可以被计L了。但q个功能有个~点Q不能用在有分页的时候,它只能合计第一늚数据?br />
DisplayTag的不?br /> 初次使用DisplayTag的h可能?x)觉得惊喜,但是用久了?x)发现很多问题Q最大的问题是对中文的支持不好,比如如果查询条g中有中文Q就无法页Q无法对中文排序Q将中文导出为指定文件时出现q{等。这些问题有时候会(x)让h很郁P有时候逼得你要M改它的源代码。下面是对以上几个问题的解决Ҏ(gu)Q?br /> 1. 对于中文无法页、排序,最单的办法是修改Tomcat下的server.xml文g。找到HTTP的Connector标签Q在里面d一URIEncoding="..."Q引号里面的内容取决于你的页面编码,比如可以是GBKQUTF8{。这样上面两个问题就可以解决了?br /> 2. 导出为文Ӟ(x)其实q个功能除了中文支持外还有很多其它问题,比如它会(x)Html标签一起导出、只导出昄的内容,但如果对tableq行了decoratorQdecorator后的内容无法导出。如果想要将中文正确导出Q需要修改DisplayTag源代码?br /> 下蝲相同版本的源代码Q在org.displaytag.export.ExcelView.java文g中找到getMimeType()Ҏ(gu)Q将此方法修改ؓ(f) return "application/vnd.ms-excel;charset=GB2312";Q修改后导出数据的速度?x)慢很多Q不q将吧?br /> 3. 新版的DisplayTag1.1d了对一ơ取部分数据的支持,相关的标{֌括partialList和sizeQ需要设|partialList="true"和size的大。具体怎么用偶q没研究?br />

文章整理Q西部数?-专业提供域名注册?a target="_blank">虚拟L服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果(zhn)要转蝲本文?请保留以上信息,谢谢!



球球 2008-06-18 14:58 发表评论
]]>
Struts标签http://www.aygfsteel.com/ftqiuqiu/articles/205631.html球球球球Tue, 03 Jun 2008 11:07:00 GMThttp://www.aygfsteel.com/ftqiuqiu/articles/205631.htmlhttp://www.aygfsteel.com/ftqiuqiu/comments/205631.htmlhttp://www.aygfsteel.com/ftqiuqiu/articles/205631.html#Feedback0http://www.aygfsteel.com/ftqiuqiu/comments/commentRss/205631.htmlhttp://www.aygfsteel.com/ftqiuqiu/services/trackbacks/205631.htmlbean:cookie
bean:define
bean:header
bean:include
bean:message
bean:page
bean:parameter
bean:resource
bean:size
bean:struts
bean:write
html:base
html:cancel
html:select
html:checkbox
html:radio
html:multibox
html:link
html:errors
html:javascript
html:xhtml
logic:iterate
logic:present
logic:messagesPresent
logic:empty
logic:match
logic:equal
logic:forward
  阅读全文

球球 2008-06-03 19:07 发表评论
]]>
վ֩ģ壺 | ƽ| ɽ| п| °Ͷ| ֺ| | ְ| ˫| ׶| ٹ| ޽| Ͱ| Դ| | | | | ¡| ¦| | ʡ| | | | | | Ǩ| ȫ| | | | | ຣʡ| ɽ| | | ղ| ƽ| | ɳ|