📄 使用page来分页.txt
字号:
public Page getStudentList(String page) {
ResultSet rst = null;
ArrayList list = new ArrayList();
int pageNum;
if (page == null || page.equals("")) pageNum = 1;
else pageNum = Integer.parseInt(page);
p.setRowsPerPage(6); //每页显示6行
String s1 = "select top " + pageNum * p.getRowsPerPage() + " * from table where ....";
String s2 = "select count(*) from table where ...";
pstmt = conn.prepareStatement(s2);
rst = pstmt.executeQuery();
if (rst.next()) p.setMaxRowCount(rst.getInt(1)); //取得一共的行数
pstmt = null;
rst = null;
pstmt = conn.prepareStatement(s1, ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
rst = pstmt.executeQuery();
int i = (pageNum - 1) * p.getRowsPerPage(); //
if (i != 0) rst.absolute(i);
while (rst.next()) {
...
list.add(...);
}
p.setCurPage(pageNum); //第几页
p.setList(list); //list
p.setMaxPage(); //最大页数
return p;
}
特殊用法:
public Page searchGroup(Group group, int pageSize) throws DaoException {
Page page = new Page();
try {
Session session = HibernateUtil.currentSession();
HibernateUtil.beginTransaction();
Example exampleGroup = Example.create(group);
exampleGroup.ignoreCase().enableLike(MatchMode.ANYWHERE);
//exampleGroup.excludeZeroes();
Criteria criteria = session.createCriteria(Group.class).add(
exampleGroup).addOrder(Order.asc("groupCreateDate"));
List list = criteria.list();
page.setMaxRowCount(list.size());
//page.setRowsPerPage(2);
page.setMaxPage();
page.setFormName("groupInfoForm");
Debug.println("记录的总页数为:" + page.getMaxPage());
//判断如果分页数大于最大页数,则将页数设置为第一页
if (pageSize > page.getMaxPage() || pageSize < 0) {
Debug.println("警告:请求的分页数 " +
pageSize + " 大于该记录的总页数 " +
page.getMaxPage() +
" 或者小于 0 ,请求的页数将置为 1 。");
pageSize = 1;
}
//设置当前页数
page.setCurPage(pageSize);
list = criteria.setMaxResults(page.getRowsPerPage())
.setFirstResult((pageSize - 1) * page.getRowsPerPage())
.list();
page.setList(list);
HibernateUtil.commitTransaction();
} catch (HibernateException ex) {
HibernateUtil.rollbackTransaction();
} finally {
HibernateUtil.closeSession();
}
return page;
Page page = groupService.getGroupList(1);
page.setTarget(request.getContextPath() + "/group/EditGroup.jsp");
request.setAttribute("groupPageList",page);
jsp页面用法:
<%
String strpage = request.getParameter("Page");
int PageNum;
if (strpage != null) {
PageNum = Integer.parseInt(strpage);
}
else {
PageNum = 1;
}
Page pagelist = new Page();
pagelist = SimpleGroup.getGroupLists(PageNum);
//request.setAttribute("gps", pagelist.getList());
List groupList = pagelist.getList();
%>
<%
for(int i=0;<groupList.size();i++){
Group group = (Group)groupList.get(i);
out.println(group.getName());
}
%>
//生成前台分页信息
<%
if (pagelist.getList() != null) {
out.print(pagelist.pageStr("\"viewGroups.jsp\""));
}
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -