日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

新闻发布系统:分页

發(fā)布時間:2024/4/15 windows 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 新闻发布系统:分页 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

分頁實現(xiàn):

實現(xiàn)數(shù)據(jù)的分頁顯示,需要以下幾個關(guān)鍵步驟:

①確定每頁顯示的總頁數(shù)

②計算顯示的總頁數(shù)

③編寫SQL語句

實現(xiàn)效果如圖所示:

?

?

當(dāng)點擊下一頁時,地址欄地址為?pageIndex=2

1、創(chuàng)建util包,Page類,定義相關(guān)屬性并進行封裝:

package cn.news.util;import java.util.List;import cn.news.entity.NewsDetail;public class Page {//當(dāng)前頁private int pageIndex;//頁面記錄數(shù)private int pageSize;//本業(yè)顯示真實數(shù)據(jù)private List<NewsDetail> list;//總頁數(shù)private int totalPages;//總記錄數(shù)private int totalRecords;public int getPageIndex() {return pageIndex;}public void setPageIndex(int pageIndex) {this.pageIndex = pageIndex;}public int getPageSize() {return pageSize;}public void setPageSize(int pageSize) {this.pageSize = pageSize;}public List<NewsDetail> getList() {return list;}public void setList(List<NewsDetail> list) {this.list = list;}public int getTotalPages() {return totalPages;}public void setTotalPages(int totalPages) {this.totalPages = totalPages;}public int getTotalRecords() {return totalRecords;}public void setTotalRecords(int totalRecords) {this.totalRecords = totalRecords;} }

?

?

2、在Dao實現(xiàn)類NewsDetailDaoImpl定義獲取新聞當(dāng)前頁的數(shù)據(jù)的方法getonePage,并植入兩個參數(shù)pageIndex, pageSize

@Overridepublic List<NewsDetail> getonePage(int pageIndex, int pageSize)throws Exception {List<NewsDetail> list=new ArrayList<NewsDetail>();String sql="select top "+pageSize+" * from newsDetails where newsId not in(select top "+(pageIndex-1)*pageSize+" newsId from newsDetails)";ResultSet rs=executeQuery(sql);if(rs!=null){while(rs.next()){NewsDetail news=new NewsDetail();news.setNewsId(rs.getInt("newsId"));news.setNewsTitle(rs.getString("newsTitle"));news.setNewsContent(rs.getString("newsContent"));news.setNewsCreateDate(rs.getDate("newsCreateDate"));news.setNewsAuthor(rs.getString("newsAuthor"));news.setNewsCategoryId(rs.getInt("newsCategoryId"));list.add(news);}}return list;}

3、在NewsServlet類中把數(shù)據(jù)傳遞給Jsp頁面

package cn.news.servlet;import java.io.IOException;import java.util.List;import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import cn.news.entity.NewsDetail; import cn.news.impl.NewsDetailDaoImpl; import cn.news.util.Page;public class NewsServlet extends HttpServlet {/***/public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request,response);}/***/public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//實例化daoNewsDetailDaoImpl dao=new NewsDetailDaoImpl();try {Page page=new Page();//默認3條數(shù)據(jù)int pageSize=3;page.setPageSize(pageSize);//當(dāng)前頁int myindex=1;String pageIndex=request.getParameter("pageIndex");if(pageIndex!=null&&(!pageIndex.equals(""))){myindex=Integer.parseInt(pageIndex);}else {myindex=1;}//當(dāng)前頁賦值page.setPageIndex(myindex);int mytotalPages=0;int totalPages=dao.getAllCount();if(totalPages%pageSize==0){mytotalPages=totalPages/pageSize;}else{mytotalPages=totalPages/pageSize+1;}page.setTotalPages(mytotalPages);//泛型數(shù)據(jù)List<NewsDetail> list= dao.getonePage(page.getPageIndex(), pageSize);page.setList(list);request.setAttribute("list", page);request.getRequestDispatcher("/index.jsp").forward(request, response);//List<NewsDetail> list=dao.getAllNews();} catch (Exception e) {e.printStackTrace();}}}

4、在index.jsp頁面得到泛型集合,并獲取當(dāng)前頁數(shù)和下一頁

<%Page page2=(Page)request.getAttribute("list");for(NewsDetail item:page2.getList()){%><li><a href='newspages/news_read.jsp'><%=item.getNewsTitle() %></a><span><%=item.getNewsCreateDate() %></span></li><%}%><p align="right"> 當(dāng)前頁數(shù):[<%=page2.getPageIndex() %>/<%=page2.getTotalPages() %>]&nbsp; <a href="<%=path %>/servlet/NewsServlet?pageIndex=<%=page2.getPageIndex()+1%>">下一頁</a> <a href="#">末頁</a> </p></ul>

?

轉(zhuǎn)載于:https://www.cnblogs.com/hr1997/p/5647347.html

總結(jié)

以上是生活随笔為你收集整理的新闻发布系统:分页的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。