一.標(biāo)簽說明:(整理一下valueList的標(biāo)簽api文檔,做了簡短說明,只列出常用標(biāo)簽和相關(guān)重要屬性)
1.vlh:root root標(biāo)簽做為所有vlh標(biāo)簽的根標(biāo)簽.
1)value 在給定的范圍內(nèi),包含在ValueList或list的變量名. List的實(shí)例自動(dòng)被DefaultListBackedValueList包裝在ValueList中
2)id 如果有多個(gè)表被包含在一個(gè)request中,ID屬性能區(qū)分每個(gè)表。id被追加到所有的parameters中。
例如:表ID=(blob),那么分頁參數(shù)中將包含?paggingColumn=firstName(bob),沒有ID指定時(shí),使用默認(rèn)ID。
當(dāng)在WEB中使用ValueListHandlerHelper時(shí),ID用來構(gòu)建list中的信息,因此要在application中指定唯一的ID
3)url 返回的URL,在表生成后所有的連接自動(dòng)生成,只有action標(biāo)簽可以被覆蓋
例:<vlh:root id="MyTable" value="list" url="userAction.do?" includeParameters="*" >
所有的鏈接以 "?"起始. 結(jié)果像下面這樣:
<a href="userAction.do?param1=value1&....¶mN=valueN" >
4)configName ValueListConfigBean 的id名. 它的名稱被定義在spring的配置文件中,用來為表格配置風(fēng)格.一般 情況我更愿意使用table的class屬性配置風(fēng)格。valueList為class也指定了三種風(fēng)格classicLook、microsoftLook、simpleLook.是以三個(gè)properties文件形式提供的
2.vlh:row 這是一個(gè)迭代標(biāo)簽. 這個(gè)標(biāo)簽迭代在ValueList中對(duì)象的屬性
1)bean 在迭代標(biāo)簽上使用pageContext的key名
假設(shè)我們有一個(gè)類Player有g(shù)etId方法
<vlh:row bean="player">
使用EL語言,顯示Player的id值 ${player.id}.
</vlh:row>
2)display 指定要顯示的adpater名(在configuration bean中定義),默認(rèn)是html,還有cvs,excel等
3.vlh:column 顯示每一列的值
例:<vlh:column title="Id of Player" property="id" sortable="desc" emphasisPattern="1"/>
顯示列,標(biāo)題為"Id of Player",顯示id屬性的值,如果值中包含"1" ,將被高亮顯示
1)sortable 是否排序.
asc 升序排列. desc 降序排列
2)property 在adapter中得到j(luò)avabean的屬性名
3) groupKey 為列指定groupKey值,將使該列相同的數(shù)據(jù)合并,其余為空白
4) format 格式化number,java.util.date or Calendar類型數(shù)據(jù)。使用WEB瀏覽器的locale做為默認(rèn)的locale
例:
<vlh:column format="#,###,##0.00" locale="ref to locale instance" .. > 使用指定的locale.
<vlh:column format="#,###,##0.00" >使用瀏覽器的locale
5) title 指定列標(biāo)題
6) emphasisPattern 這個(gè)模式能夠高亮列的顯示,它會(huì)在所有的分頁中均高亮顯示
例:
<vlh:column title="playerid" property="id" sortable="desc" emphasisPattern="30" />
id的值中含有30的列將被高亮顯示
7) attributes 允許指定html屬性
例:
<vlh:column title="lastname" property="lastname" sortable="desc" attributes="width='150'"/>
4.vlh:attribute 為整個(gè)table設(shè)定附加html屬性.
使用在vlh:column 上的attributes屬性只為header設(shè)置屬性。而使用vlh:attribute標(biāo)簽將為所有的行設(shè)置屬性
5.vlh:paging 生成分頁和焦點(diǎn)的標(biāo)簽
<vlh:paging showSummary="true" pages="3"><c:out value="${page}"/></vlh:paging>
6.vlh:controls 為行添加指定的列
1)title 列的標(biāo)題名
7.vlh:action 為每行的action中添加編輯、刪除動(dòng)作
例:<vlh:root url="baseUrl.do" >
<vlh:controls titleKey="Control" >
<vlh:action url="edit.jsp?" customParameters="<%=customParams%>">
使用自定義的HashMap變量customParams,并做為參數(shù)到添加到"edit.jsp?"的url中.
</vlh:controls>
</vlh:root>
生成的url像這樣 ..\edit.jsp?&custumParam1=customParamValue1&....&customParamN=customParamValueN
其中custumParam1...custumParamN是customParams中的key
8.vlh:addParam 設(shè)定任意的參數(shù)到父標(biāo)簽,如root,action等
例:為vlh:action添加參數(shù)
<vlh:action url="\delete.do?" customParameters="<%=customParams%>"> 這是生成的基本url ..\delete.do?
<vlh:addParam name="id" property="id" temp="true"/>
添加如下參數(shù)到url中 &ACTid="Row-Java-Bean.getId()",如果temp值為true,添加ACTION_TEMP_PARAM 前綴到參數(shù)名中
<vlh:addParam name="id" property="id" temp="false"/>
添加如下參數(shù)到url中 &id="Row-Java-Bean.getId()" ,temp值為false,不添加前綴
<vlh:addParam property="xyz" />
添加如下參數(shù)到url中 &ACTxyz="javabean.getXyz()" ,temp值默認(rèn)為true
<vlh:addParam name="OneStaticParam" value="OneStaticValue" temp="false"/>
添加靜態(tài)的url參數(shù)到url中 &OneStaticParam="OneStaticValue"
</vlh:action>
例:為vlh:root添加參數(shù)
<vlh:root url="?" customParameters="<%=customParams%>">
<vlh:addParam name="method" value="doView" temp="false"/>
添加靜態(tài)的url參數(shù)到url中,呈現(xiàn)結(jié)果:..\?method=doView
</vlh:root>