JekLin
BlogJava
首页
新随笔
新文章
联系
聚合
管理
posts - 0,comments - 0,trackbacks - 0
<
2024年12月
>
日
一
二
三
四
五
六
24
25
26
27
28
29
30
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
1
2
3
4
留言簿
给我留言
查看公开留言
查看私人留言
我参与的团队
Java WebSide User Group(0/0)
文章档案
2006年2月 (1)
搜索
最新评论
JavaBean 实现简单分页功能
1
/** */
/**
2
* 实现简单分页功能。
3
* <p>Title: </p>
4
* <p>Description: </p>
5
* <p>Copyright: Copyright (c) 2005</p>
6
* <p>Company: </p>
7
*
@author
JekLin
8
*
@version
1.0
9
*/
10
public
class
Pagination
11
implements
java.io.Serializable
{
12
private
int
pageLeng
=
1
;
//
每一页长度
13
private
int
totalPage;
//
总页数
14
private
int
pageNum
=
0
;
//
当前页数
15
private
ArrayList table;
//
用来做分数据表
16
private
ArrayList alist
=
new
ArrayList();
17
public
Pagination()
{
18
19
}
20
21
public
Pagination(ArrayList table)
{
22
this
.table
=
table;
23
this
.info();
24
}
25
26
private
void
info()
{
//
分析数据表
27
if
(
this
.table
!=
null
)
{
28
int
rows
=
table.size();
29
this
.totalPage
=
rows
/
pageLeng;
//
设置总页数
30
if
(rows
%
pageLeng
!=
0
)
{
31
this
.totalPage
++
;
32
}
33
ArrayList aList
=
new
ArrayList();
34
for
(
int
i
=
0
; i
<
rows; i
++
)
{
35
aList.add(table.get(i));
36
}
37
this
.alist
=
aList;
38
39
}
40
}
41
42
/** */
/**
43
* 所有行数量
44
*
@return
int
45
*/
46
public
int
getRows()
{
47
if
(table
==
null
)
{
48
return
-
1
;
49
}
50
return
this
.table.size();
51
}
52
53
/** */
/**
54
*
55
*
@param
table ArrayList
56
*/
57
public
void
setTable(ArrayList table)
{
58
this
.table
=
table;
59
this
.info();
60
61
}
62
63
/** */
/**
64
* 每一页长度
65
*
@return
int
66
*/
67
public
int
getPageLeng()
{
68
return
this
.pageLeng;
69
}
70
71
public
void
setPageLeng(
int
pageLeng)
{
72
this
.pageLeng
=
pageLeng;
73
}
74
75
/** */
/**
76
* 总页数
77
*
@return
int
78
*/
79
public
int
getTotalPage()
{
80
return
this
.totalPage;
81
}
82
83
/** */
/**
84
* 当前页数
85
*
@return
int
86
*/
87
public
int
getPageNum()
{
88
return
this
.pageNum;
89
}
90
91
/** */
/**
92
* 首页
93
*
@return
ArrayList
94
*/
95
public
ArrayList getFirst()
{
96
ArrayList aList
=
new
ArrayList();
97
for
(
int
i
=
0
; i
<
this
.pageLeng; i
++
)
{
98
if
(i
<
alist.size())
{
99
aList.add(alist.get(i));
100
}
101
}
102
this
.pageNum
=
1
;
103
return
aList;
104
}
105
106
/** */
/**
107
* 上一页
108
*
@return
ArrayList
109
*/
110
public
ArrayList getRrevious()
{
111
ArrayList aList
=
new
ArrayList();
112
if
(pageNum
==
1
)
{
113
return
this
.getFirst();
114
}
115
for
(
int
i
=
(pageNum
-
2
)
*
pageLeng; i
<
(pageNum
-
1
)
*
pageLeng; i
++
)
{
116
if
(i
<
alist.size())
{
117
aList.add(alist.get(i));
118
}
119
}
120
pageNum
--
;
121
return
aList;
122
}
123
124
/** */
/**
125
* 下一页
126
*
@return
ArrayList
127
*/
128
public
ArrayList getNext()
{
129
ArrayList aList
=
new
ArrayList();
130
if
(pageNum
==
totalPage)
{
131
return
this
.getLast();
132
}
133
for
(
int
i
=
pageNum
*
pageLeng; i
<
(pageNum
+
1
)
*
pageLeng; i
++
)
{
134
if
(i
<
alist.size())
{
135
aList.add(alist.get(i));
136
}
137
}
138
pageNum
++
;
139
return
aList;
140
}
141
142
/** */
/**
143
* 最后一页
144
*
@return
ArrayList
145
*/
146
public
ArrayList getLast()
{
147
ArrayList aList
=
new
ArrayList();
148
for
(
int
i
=
(totalPage
-
1
)
*
pageLeng; i
<
totalPage
*
pageLeng; i
++
)
{
149
if
(i
<
alist.size())
{
150
aList.add(alist.get(i));
151
152
}
153
}
154
this
.pageNum
=
this
.totalPage;
155
return
aList;
156
}
157
158
/** */
/**
159
* 根基页码跳转
160
*
@param
num int
161
*
@return
ArrayList
162
*/
163
public
ArrayList getForPageNum(
int
num)
{
164
ArrayList aList
=
new
ArrayList();
165
if
(alist
!=
null
&&
alist.size()
<=
0
)
{
166
return
aList;
167
}
168
for
(
int
i
=
(num
-
1
)
*
pageLeng; i
<
num
*
pageLeng; i
++
)
{
169
if
(i
<
alist.size())
{
170
aList.add(alist.get(i));
171
}
172
}
173
this
.pageNum
=
num;
174
return
aList;
175
}
176
177
/** */
/**
178
* 是否为第一页
179
*
@return
boolean
180
*/
181
public
boolean
isFirst()
{
182
if
(
this
.pageNum
<=
1
)
{
183
return
true
;
184
}
185
return
false
;
186
}
187
188
/** */
/**
189
* 是否为最后一页
190
*
@return
boolean
191
*/
192
public
boolean
isLast()
{
193
if
(
this
.pageNum
>=
this
.totalPage)
{
194
return
true
;
195
}
196
return
false
;
197
}
198
199
}
200
201
posted on 2006-02-19 23:17
JekLin
阅读(275)
评论(0)
编辑
收藏
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
Chat2DB
C++博客
博问