JSP將後臺返回的資料顯示並分頁
阿新 • • 發佈:2019-01-24
<span style="font-size:18px;"><%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@page import="java.util.Iterator" import="java.util.List" import="com.bbs.pojo.*" import="org.springframework.context.ApplicationContext" import="org.springframework.context.support.ClassPathXmlApplicationContext" %> <%! public static final int PAGESIZE = 20; //每頁行數 int pageCount; int curPage = 1; %> <% //一頁放20個 try{ List<Topic> topiclist = (List<Topic>)session.getAttribute("topiclist"); //out.print(((Topic)topiclist.get(1)).getContent()); //記錄總行數 int size = topiclist.size(); //總頁數 pageCount = (size%PAGESIZE==0)?(size/PAGESIZE):(size/PAGESIZE+1); //獲取當前頁數 String tmp = request.getParameter("curPage"); //初始化頁數 if(tmp==null){ tmp="1"; } //out.print(tmp); curPage = Integer.parseInt(tmp); //調整頁數 if(curPage>=pageCount){ curPage = pageCount; } int count = 0; Iterator<Topic> it = topiclist.iterator(); //out.print("記錄總數:"+topiclist.size()+"<br>"); //將記錄指標定位到待顯示頁的第一條記錄上 ApplicationContext act = new ClassPathXmlApplicationContext("applicationContext.xml"); UserDAO ud =(UserDAO)act.getBean("UserDAO"); ModuleDAO md =(ModuleDAO)act.getBean("ModuleDAO"); while(it.hasNext()){ //用於定位每頁列印開始位置 for(int i=1;i <= topiclist.size();i++){ if(i == (curPage-1)*PAGESIZE+1){ //out.print((curPage-1)*PAGESIZE+1); break; } it.next(); } Topic topic=(Topic)it.next(); User u=ud.findById(topic.getUser().getId()); Module module=md.findById(topic.getModule().getId()); count++; %> <div class="templatemo-content-widget white-bg templatemo-overflow-hidden" > <table style="width: 900px"> <tr> <td rowspan="2"><img width="110px" height="110px" src="<%=u.getHeadImg() %>"></td> <td colspan="3"><span style="width: 500px;height: 60px"><a href="findPostAction?topicId=<%=topic.getId()%>" style="font-size: 40px;color: red"><%=topic.getContent() %></a></span></td> <td><p><span>瀏覽次數:<font color="orange" size="15px"><%=topic.getPostCount() %></font></span></p></td> </tr> <tr> <td><a href="findTopicByModuleAction?moduleId=<%=module.getId()%>"><%=module.getName() %></a></td> <td><B><span><%=u.getUsername() %></span></B></td> <td><p align="center"><span><%=topic.getCreateTime() %></span></p></td> <td><p><span>回覆次數:<font color="orange" size="15px"><%=topic.getReplyCount() %></font></span></p></td> </tr> </table> </div> <% } } catch(Exception e){ out.print("加載出錯!"); } %> <center> <a href = "index.jsp?curPage=1" >首頁</a> <a href = "index.jsp?curPage=<%=curPage-1%>" >上一頁</a> <a href = "index.jsp?curPage=<%=curPage+1%>" >下一頁</a> <a href = "index.jsp?curPage=<%=pageCount%>" >尾頁</a> 第<%=curPage%>頁/共<%=pageCount%>頁 </center></span>