Skip to content

Commit 4a54d71

Browse files
author
liuxun
committed
工具类
1 parent 2745a18 commit 4a54d71

1 file changed

Lines changed: 75 additions & 0 deletions

File tree

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
package com.algorithm.study.demo.util;
2+
3+
import java.io.Serializable;
4+
5+
/***
6+
* 分页工具类
7+
*/
8+
public class Paging implements Serializable {
9+
10+
private static final long serialVersionUID = 1L;
11+
12+
private static final int PAGE_SIZE = 10;
13+
14+
private int total = 0;
15+
16+
private int page = 1;
17+
18+
private int pageSize = PAGE_SIZE;
19+
20+
private int pages = 0;
21+
22+
public Paging() {
23+
this(1, PAGE_SIZE);
24+
}
25+
26+
public Paging(int page, int pageSize) {
27+
this.page = page;
28+
this.pageSize = pageSize;
29+
}
30+
31+
private void calculatePages() {
32+
total = total > 0 ? total : 0;
33+
pageSize = pageSize > 0 ? pageSize : PAGE_SIZE;
34+
pages = total / pageSize + (total % pageSize == 0 ? 0 : 1);
35+
page = pages >= 1 ? Math.min(Math.max(page, 1), pages) : 1;
36+
}
37+
38+
public int getTotal() {
39+
return total;
40+
}
41+
42+
public void setTotal(int total) {
43+
this.total = total;
44+
calculatePages();
45+
}
46+
47+
public int getPage() {
48+
return page;
49+
}
50+
51+
public void setPage(int page) {
52+
this.page = page;
53+
}
54+
55+
public int getPageSize() {
56+
return pageSize;
57+
}
58+
59+
public void setPageSize(int pageSize) {
60+
this.pageSize = pageSize;
61+
}
62+
63+
public int getPages() {
64+
return pages;
65+
}
66+
67+
public void setPages(int pages) {
68+
this.pages = pages;
69+
}
70+
71+
public int getStart() {
72+
return Math.max((page - 1) * pageSize, 0);
73+
}
74+
75+
}

0 commit comments

Comments
 (0)