JSP:
< display:table name ="resultList" pagesize ="100" requestURI ="listLog.do" sort ="external" id ="row" partialList ="true" size ="resultSize" >
< display:column property ="operdate" title ="操作時間" ></ display:column >
< display:column property ="pername" title ="操作人員" ></ display:column >
< display:column property ="opertype" title ="操作類型" ></ display:column >
</ display:table >
name="resultList" 將記錄集存在session或者request中的鍵值
pagesize="100" 每頁顯示100條數據
sort="external" 外部排序
id="row" 表格id值,用於程序得相關的參數
partialList="true" 分段從數據庫中讀數據
size="resultSize" 記錄的總條數,用於計算總頁數
Controller:
String pageIndexName = new org.displaytag.util.ParamEncoder( "row" ).encodeParameterName(org.displaytag.tags.TableTagParameters.PARAMETER_PAGE);
// 每頁顯示的條數
int pageSize = 100 ;
// 當前頁
int pageIndex = GenericValidator.isBlankOrNull(request.getParameter(pageIndexName)) ? 0 :(Integer.parseInt(request.getParameter(pageIndexName)) - 1 );
// 統計總記錄數的sql語句
int resultSize = logDao.getAllCount();
// 取得當前頁數據
List resultList = logDao.getLogList( int pageIndex, int pageSize);
try {
request.setAttribute( " resultList " ,resultList); // 把結果存入request
request.setAttribute( " resultSize " , new Integer(rs.getInt( 1 ))); // 將總記錄數保存成Intger實例保存在request中
} catch (Exception ex) {
ex.printStackTrace();
}
其中 logDao.getAllCount() 和 logDao.getLogList(int pageIndex,int pageSize),根據不同持久層有不同實現,此處略。