思路:
- 連接數據庫獲取結果集
- 通過地址欄傳參獲取當前是第幾頁
- 循環控制輸出待顯示的內容
- 設置相應頁碼跳轉鏈接(即傳參給點2)
即模改點1,3即可。
代碼:
// 1. 連接數據庫獲取結果集
//示例 List<Message> all=DAOFactory.getMessageDAOInstance().getAllMessage();
//分頁處理
request.setCharacterEncoding("utf-8");//設置編碼
int pag=1;
if(request.getParameter("page")!=null)
pag=Integer.parseInt(request.getParameter("page"));
int rowCnt=all.size(); //總記錄數
int pageSize=5; //每頁5條記錄
int pageCnt=(rowCnt+pageSize-1)/pageSize; //頁數
if(pag<=0||pag>pageCnt)pag=1; //越界則默認首頁
for(int j=(pag-1)*pageSize;j<rowCnt&&j<(pag-1)*pageSize+pageSize;j++){
//3. 循環控制輸出待顯示的內容
/*示例
if(name.equals(all.get(j).getWriter())){
%>
<a href="updateMessage.jsp?messageID=<%=all.get(j).getMessageID() %>"> 修改 </a>
<a href="deleteMessage.jsp?messageID=<%=all.get(j).getMessageID()%> " οnclick="return del()"> 刪除 </a>
<% }//end if
%>
<br>
<p align="center"><%=all.get(j).getContent() %></p>
<pre align="right">
<%=all.get(j).getWriter()%>
<%=all.get(j).getTime()%>
回覆數:<%=all.get(j).getCount() %></pre>
*/
<% }//end for
%>
<!-- 底部頁碼鏈接處理,記得改jsp名字 -->
<form name="info" method="get" action="test.jsp">
<p align="center" >第 <%=pag %> 頁 共<%=pageCnt %>頁 共<%=rowCnt %>條</p>
<p align="center">
<%
if(pag>1){
%>
<a href="test.jsp?page=1">首頁</a>
<a href="test.jsp?page=<%=(pag-1)%>">上一頁</a>
<% }
if(pageCnt>1&&pag<pageCnt){
%>
<a href="test.jsp?page=<%=(pag+1)%>">下一頁</a>
<a href="test.jsp?page=<%=pageCnt%>">尾頁</a>
<% }
if(pageCnt>1){
%>
跳到第<input type="text" name="page" size="5"/>頁
<input type="submit" name="submit" size="12" value="GO"/>
<% }
%>
</p>
</form>
運行效果:
你的點贊將會是我最大的動力