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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java 分页通用

發布時間:2025/4/16 java 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java 分页通用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、定義分頁模型:PageModel

?

  • package?com.common.page;??
  • ??
  • import?java.util.List;??
  • ??
  • /**?
  • ?*?封裝分頁信息?
  • ?*?@author?Administrator?
  • ?*?
  • ?*/??
  • public?class?PageModel<E>?{??
  • ??
  • ????//結果集??
  • ????private?List<E>?list;??
  • ??????
  • ????//查詢記錄數??
  • ????private?int?totalRecords;??
  • ??????
  • ????//每頁多少條數據??
  • ????private?int?pageSize;??
  • ??????
  • ????//第幾頁??
  • ????private?int?pageNo;??
  • ??????
  • ????/**?
  • ?????*?總頁數?
  • ?????*?@return?
  • ?????*/??
  • ????public?int?getTotalPages()?{??
  • ????????return?(totalRecords?+?pageSize?-?1)?/?pageSize;??
  • ????}??
  • ??????
  • ????/**?
  • ?????*?取得首頁?
  • ?????*?@return?
  • ?????*/??
  • ????public?int?getTopPageNo()?{??
  • ????????return?1;??
  • ????}??
  • ??????
  • ????/**?
  • ?????*?上一頁?
  • ?????*?@return?
  • ?????*/??
  • ????public?int?getPreviousPageNo()?{??
  • ????????if?(pageNo?<=?1)?{??
  • ????????????return?1;??
  • ????????}??
  • ????????return?pageNo?-?1;??
  • ????}??
  • ??????
  • ????/**?
  • ?????*?下一頁?
  • ?????*?@return?
  • ?????*/??
  • ????public?int?getNextPageNo()?{??
  • ????????if?(pageNo?>=?getBottomPageNo())?{??
  • ????????????return?getBottomPageNo();??
  • ????????}??
  • ????????return?pageNo?+?1;????
  • ????}??
  • ??????
  • ????/**?
  • ?????*?取得尾頁?
  • ?????*?@return?
  • ?????*/??
  • ????public?int?getBottomPageNo()?{??
  • ????????return?getTotalPages();??
  • ????}??
  • ??????
  • ????public?List<E>?getList()?{??
  • ????????return?list;??
  • ????}??
  • ??
  • ????public?void?setList(List<E>?list)?{??
  • ????????this.list?=?list;??
  • ????}??
  • ??
  • ????public?int?getTotalRecords()?{??
  • ????????return?totalRecords;??
  • ????}??
  • ??
  • ????public?void?setTotalRecords(int?totalRecords)?{??
  • ????????this.totalRecords?=?totalRecords;??
  • ????}??
  • ??
  • ????public?int?getPageSize()?{??
  • ????????return?pageSize;??
  • ????}??
  • ??
  • ????public?void?setPageSize(int?pageSize)?{??
  • ????????this.pageSize?=?pageSize;??
  • ????}??
  • ??
  • ????public?int?getPageNo()?{??
  • ????????return?pageNo;??
  • ????}??
  • ??
  • ????public?void?setPageNo(int?pageNo)?{??
  • ????????this.pageNo?=?pageNo;??
  • ????}??
  • }??
  • 2、分頁測試:在MySQL中建立admin表,里面有字段id、name、password

    ?

    3、簡歷Admin的實體bean類:

  • package?com.common.page;??
  • ??
  • public?class?Admin?{??
  • ????private?int?id;??
  • ????private?String?name;??
  • ????private?String?password;??
  • ????public?int?getId()?{??
  • ????????return?id;??
  • ????}??
  • ????public?void?setId(int?id)?{??
  • ????????this.id?=?id;??
  • ????}??
  • ????public?String?getName()?{??
  • ????????return?name;??
  • ????}??
  • ????public?void?setName(String?name)?{??
  • ????????this.name?=?name;??
  • ????}??
  • ????public?String?getPassword()?{??
  • ????????return?password;??
  • ????}??
  • ????public?void?setPassword(String?password)?{??
  • ????????this.password?=?password;??
  • ????}??
  • ??
  • }??

  • 4、測試調用:

    ?

    ?


  • package?com.common.page;??
  • ??
  • import?java.sql.Connection;??
  • import?java.sql.PreparedStatement;??
  • import?java.sql.ResultSet;??
  • import?java.sql.SQLException;??
  • import?java.util.ArrayList;??
  • import?java.util.List;??
  • ??
  • import?com.common.db.DbUtil;??
  • ??
  • public?class?Client?{??
  • ????public?static?PageModel?findAdmins(int?pageNo,int?pageSize){??
  • ????????Connection?conn=DbUtil.getConnection();??
  • ????????String?sql="select?*?from?admin?limit??,?";??
  • ????????PageModel?pageModel=null;??
  • ????????PreparedStatement?pstm=null;??
  • ????????ResultSet?rs=null;??
  • ????????Admin?admin=null;??
  • ????????List<Admin>?list=new?ArrayList<Admin>();??
  • ????????try?{??
  • ????????????pstm=conn.prepareStatement(sql);??
  • ????????????pstm.setInt(1,?(pageNo-1)*pageSize);??
  • ????????????pstm.setInt(2,?pageNo*pageSize);??
  • ????????????rs=pstm.executeQuery();;??
  • ????????????while(rs.next()){??
  • ????????????????admin=new?Admin();??
  • ????????????????admin.setId(rs.getInt("a_id"));??
  • ????????????????admin.setName(rs.getString("a_name"));??
  • ????????????????admin.setPassword(rs.getString("a_pwd"));??
  • ????????????????list.add(admin);??
  • ????????????}??
  • ????????????ResultSet?rs2=pstm.executeQuery("select?count(*)?from?admin");??
  • ????????????int?total=0;??
  • ????????????if(rs2.next()){??
  • ????????????????total=rs2.getInt(1);??
  • ????????????}??
  • ????????????pageModel=new?PageModel();??
  • ????????????pageModel.setPageNo(pageNo);??
  • ????????????pageModel.setPageSize(pageSize);??
  • ????????????pageModel.setTotalRecords(total);??
  • ????????????pageModel.setList(list);??
  • ????????}?catch?(SQLException?e)?{??
  • ????????????e.printStackTrace();??
  • ????????}finally{??
  • ????????????DbUtil.close(conn);??
  • ????????????DbUtil.close(pstm);??
  • ????????????DbUtil.close(rs);??
  • ????????}??
  • ????????return?pageModel;??
  • ????}??
  • ??????
  • ????public?static?void?main(String[]?args)?{??
  • ????????PageModel?pageModel=Client.findAdmins(2,4);??
  • ????????List<Admin>?list=pageModel.getList();??
  • ????????for(Admin?a:list){??
  • ????????????System.out.print("ID:"+a.getId()+",用戶名:"+a.getName()+",密碼:"+a.getPassword());??
  • ????????????System.out.println();??
  • ????????}??
  • ????????System.out.print("當前頁:"+pageModel.getPageNo()+"?");??
  • ????????System.out.print("共"+pageModel.getTotalPages()+"頁??");??
  • ????????System.out.print("首頁:"+pageModel.getTopPageNo()+"?");??
  • ????????System.out.print("上一頁:"+pageModel.getPreviousPageNo()+"?");??
  • ????????System.out.print("下一頁:"+pageModel.getNextPageNo()+"?");??
  • ????????System.out.print("尾頁:"+pageModel.getBottomPageNo()+"?");??
  • ????????System.out.print("共"+pageModel.getTotalRecords()+"條記錄");??
  • ????????System.out.println();??
  • ????}??
  • ??
  • }??
  • 轉載于:https://www.cnblogs.com/huqianliang/p/5688475.html

    總結

    以上是生活随笔為你收集整理的Java 分页通用的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。