国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java實現簡單的分頁功能

Java實現簡單的分頁功能

2020-12-12 15:44LandiYax Java教程

這篇文章主要為大家詳細介紹了Java實現簡單的分頁功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Java實現分頁功能的具體代碼,供大家參考,具體內容如下

不用根據改變SQL的形式去查詢;
直接查詢所有的數據,根據頁碼自動顯示數據;

分頁對象

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
public class PageUtils implements Serializable {
 
  /**
   *
   */
  private static final long serialVersionUID = -5247614532234782640L;
  public final static String PAGE = "page";
  public final static String PAGE_NO = "pageno";
  public final static String PAGE_SIZE = "pagesize";
 
  private long pageSize=10;//每頁顯示記錄數
  private long firstResult=0;//當頁第一條記錄號
  private long totalCount;//總記錄數
  private long totalPage;//總頁碼
  private long pageNo=1;//當前頁碼
  private List<?> sumData;//此集合可用來保存 合計數據
  private List<?> data;//查詢結果
 
  public long getPageSize() {
    return pageSize;
  }
  public void setPageSize(long pageSize) {
    this.pageSize = pageSize;
  }
  public long getFirstResult() {
    if(pageNo>0){
      firstResult=pageSize * (pageNo -1);
    }else{
      firstResult = 0;
    }
    return firstResult;
  }
 
  public long getNextPageResult(){
    if(pageNo>0){
      return pageSize*(pageNo-1);
    }else{
      return pageNo;
    }
  }
 
  public void setFirstResult(long firstResult) {
    this.firstResult = firstResult;
  }
  public long getTotalCount() {
    return totalCount;
  }
  public void setTotalCount(long totalCount) {
    this.totalCount = totalCount;
    totalPage = this.totalCount/pageSize;
    if (totalPage == 0 || totalCount % pageSize != 0) {
      totalPage++;
    }
  }
  public long getTotalPage() {
    return totalPage;
  }
  public void setTotalPage(long totalPage) {
    this.totalPage = totalPage;
  }
  public long getPageNo() {
    return pageNo;
  }
  public void setPageNo(long pageNo) {
    this.pageNo = pageNo;
  }
 
  public List<?> getData() {
    return data;
  }
 
  public void setData(List<?> data) {
    this.data = data;
  }
 
  /**
   * 是否第一頁
   */
  public boolean isFirstPage() {
    return pageNo <= 1;
  }
 
  /**
   * 是否最后一頁
   */
  public boolean isLastPage() {
    return pageNo >= getTotalPage();
  }
 
  /**
   * 下一頁頁碼
   */
  public long getNextPage() {
    if (isLastPage()) {
      return pageNo;
    } else {
      return pageNo + 1;
    }
  }
 
  /**
   * 上一頁頁碼
   */
  public long getPrePage() {
    if (isFirstPage()) {
      return pageNo;
    } else {
      return pageNo - 1;
    }
  }
 
  public PageUtils(){}
 
  public PageUtils(long pageNo){
    this.pageNo=pageNo;
  }
 
  public PageUtils(long pageNo,long pageSize){
    this.pageNo=pageNo;
    this.pageSize = pageSize;
  }
 
  public List<?> getSumData() {
    return sumData;
  }
  public void setSumData(List<?> sumData) {
    this.sumData = sumData;
  }
 
}

查詢的數據實體

在查詢的實體里添加頁碼和每頁顯示條數參數;

?
1
2
3
4
5
6
7
8
private int pageSize;  //每頁顯示的條數
private int pageNo;   //當前頁碼
public int getPageSize() {
  return pageSize;
}
public void setPageSize(int pageSize) {
  this.pageSize = pageSize;
}

控制層Controller

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
@RequestMapping("/list")
public String list(Model model,ChannelValueInfoView input) {
    // input:傳入的參數為對象
 
    PageUtils page=new PageUtils();
    //如果傳入的當前條數為0,則賦予值(首次查詢不帶參);
    if(input.getPageSize()==0){
      //當前頁碼第一頁
      input.setPageNo(1);
      //每頁顯示條數,當前每頁顯示10條數據;
      input.setPageSize(10);
    }
    page.setPageNo(input.getPageNo());
    page.setPageSize(input.getPageSize());
    //核心分頁代碼
    PageHelper p=new PageHelper();  
    Page<ChannelValueInfoList> l=p.startPage(input.getPageNo(),input.getPageSize());
    //緊跟著的第一個select查詢將會被分頁
    channelValueService.getChannelValueInfoViewList(input);
    model.addAttribute("input", input);
    page.setData(l);
    page.setTotalCount(l.getTotal());
    model.addAttribute("page", page);
    return "index";
  }

頁面處理

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
//循環穿過來的PAGE.data數據
<tr th:each="ts : ${page.data}">
<td th:text="${ts.channelValueName}"></td>
 
 
----------
<form id="content_form" action="/channelValue/list" method="post" >
  <div>
    總數:<span id="totalCount" th:text="${page.totalCount}">0</span>
  </div>
  <ul class="pagination">
    <li class="disabled">
      <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="onFirst()">首頁</a>
    </li>
    <li class="disabled">
      <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="onPre()">&lt;</a>
    </li>
    <li class="active">
      <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >
        <span id="beginRow" th:text="${page.pageNo}">0</span>
      </a>
    </li>
    <li class="disabled">
      <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="onNext()">&gt;</a>
    </li>
    <li class="disabled">
      <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" onclick="onLast()">尾頁</a>
    </li>
  </ul>
</for  m>
 
 
----------
 
<script>
  function onFirst() {
    onList(1);
  }
  function onPre() {
    var beginRow = parseInt($('#beginRow').html());
    if (beginRow - 1 > 0) {
      onList(beginRow - 1);
    }
 
  }
  function onNext() {
    var beginRow = parseInt($('#beginRow').html());
    var totalCount = parseInt($('#totalCount').html());
    var pageSize = parseInt($('#pageSize').val());
    if (parseInt(totalCount / pageSize + 1) > beginRow + 1) {
      onList(beginRow+1);
    }
  }
  function onLast() {
    var totalCount = parseInt($('#totalCount').html());
    var pageSize = parseInt($('#pageSize').val());
    onList(parseInt(totalCount / pageSize + 1) - 1);
  }
  function onList(pageNo) {
    if (pageNo == 0)
      pageNo = 1;
    $('#pageNo').val(pageNo);
    $("#content_form").submit();
  }
</script>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 欧美精品一区自拍a毛片在线视频 | 欧美日韩成人在线 | 九九免费精品视频 | 国产精品久久久久久久 | 中文字幕中文字幕 | 91精品一区二区三区久久久久久 | 一级做a爰片性色毛片2021 | 欧美日韩精品免费 | 伊人色私人影院蜜桃va | 美女天堂 | 国产精品久久久久久久久久久天堂 | 成人深夜在线观看 | 免费午夜电影 | 欧美自拍一区 | 久久精品中文字幕大胸 | 国产精品福利视频 | 直接看av的网站 | 狠狠久| 国产欧美综合视频 | 精品久久国产老人久久综合 | 色九区 | 色播视频网站 | 成人精品一区亚洲午夜久久久 | 国产探花在线精品一区二区 | 国产精品久久久久免费 | 国产一区二区三区欧美 | 中文字幕av一区二区三区 | 日本在线免费观看 | 成人免费视频网站在线看 | 亚洲国产成人av | 日韩中文字幕在线观看视频 | 免费在线成人网 | 91精品一区二区三区久久久久久 | 99精品网| 国产色婷婷| 久久丝袜诱惑 | 韩日中文字幕 | 日韩 欧美 精品 | 中文av一区二区 | 欧美一区二区三区免费 | 美女搞黄网站 |