2017-03-18 78 views
0

我在我的struts2應用程序中使用DisplayTag,我想點擊查詢點擊分頁。在顯示標記上點擊查詢分頁

例如:當接下來的頁面或任何頁面,用戶點擊然後查詢是火上動作類。

FILE:displayTag.jsp

<display:table name="list1" sort="list" size="20" pagesize="5" id="table1" export="true" requestURI="" partialList="true"> 
     <display:column property="no" group="1" sortable="true" headerClass="sortable"></display:column> 
     <display:column property="nam" group="2" sortable="true" headerClass="sortable"></display:column> 
     <display:column property="ct" group="3" sortable="true" headerClass="sortable" autolink="true"></display:column> 
     <display:setProperty name="export.excel.filename" value="diplayTag.xls"></display:setProperty> 
     <display:setProperty name="export.pdf.filename" value="diplayTag.pdf"></display:setProperty> 
     <display:setProperty name="export.csv.filename" value="diplayTag.csv"></display:setProperty> 
     <display:setProperty name="export.pdf" value="true"></display:setProperty> 
</display:table> 

我用request.setAttribute("list1", li);在那裏我將所有數據list1(ArrayList)並傳遞給displayTag.jsp。

DisplayTag得到的所有數據,並在表中顯示的格式。但我的需求是一次只傳遞5個數據,並在點擊下一頁的動作類發送其他5個數據等。

我參考鏈接:Display tag pagination problem

但我不明白,因爲我是使用MySQL,並新上DisaplyTag。

DB:的MySql

框架:struts2的

回答

0

研究和辛勤工作我找到答案了。

FILE:displayTag.jsp

<display:table name="list1" sort="external" size="20" pagesize="5" id="table1" export="true" requestURI="disTag" partialList="true"> 
    // code as above 
</dispaly:table> 

這裏requestURI="disTag"是一個動作名稱。

FILE:struts.xml的

<action name="disTag" class="className"> 
    <result name="success">/displayTag.jsp</result> 
    <result name="error">/error.jsp</result> 
</action> 

FILE:類文件

page = Integer.parseInt(request.getParameter((new ParamEncoder("table1").encodeParameterName(TableTagParameters.PARAMETER_PAGE)))); 
if(page != 0) 
{ 
    start = (page - 1) * 5; //5 is row or data per page. 
} 
getData(start, 5); //getData is a method which store all data in ArrayList. Based on start index. 
相關問題