实现:首页--上一页--下一页--末页的简单分页实现
代码如下:
Bean中的代码
Dao中的代码
//获得总的页数
public int doTotalPage(doPage dopage) {
int totalPage=0;
con = ConnectionFactory.getConnection();
try {
ps=con.prepareStatement("select count(*) from news");
rs=ps.executeQuery();
if (rs.next()) {
//获得总页数;总页数=上取整(总记录/每页大小)
// System.out.println("总记录:"+rs.getInt(1)+"每页大小:"+dopage.getPageSize()+"页数:"+rs.getInt(1)/Double.parseDouble(dopage.getPageSize()+""));
totalPage=(int) Math.ceil(rs.getInt(1)/Double.parseDouble(dopage.getPageSize()+""));
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DbClose.close(rs, ps, con);
}
return totalPage;
}
//查询所有的数据
public doPage doFindAll(doPage dopage) {
ArrayList userlist=new ArrayList();
con= ConnectionFactory.getConnection();
try {
String sql="select * from news limit "+(dopage.getNowPage()-1)*dopage.getPageSize()+"" +
" , "+dopage.getPageSize();
ps = con.prepareStatement(sql);
rs = ps.executeQuery();
while (rs.next()) {
//封装user对象
News new1=new News();
new1.setNid(rs.getInt("nid"));
new1.setNews(rs.getString("news"));
new1.setClasses(rs.getString("classes"));
new1.setDims(rs.getString("dims"));
//向数据集合中添加元素
userlist.add(new1);
}
//将查询的结果封装到doPage
dopage.setList(userlist);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
DbClose.close(rs, ps, con);
}
return dopage;
}
Servlet中的代码
// 查询所有的数据,并分页显示
if (biaoshi.equals("list")) {
InsertNews it = new InsertNews();
// 封装分页查询的参数的对象doPage
doPage dopage = new doPage();
dopage.setNowPage(Integer.parseInt(pageNo));
dopage.setPageSize(4);
// 执行查询操作,参数是doPage
dopage = it.doFindAll(dopage);
// 得到总的页数
dopage.setTotalPage(it.doTotalPage(dopage));
// 将返回的结果,放到request中到jsp中显示
request.setAttribute("doPage", dopage);
// 页面跳转
this.gotoPage("Comlist.jsp", request, response);
}
}
// 跳转页面方法
private void gotoPage(String URL, HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
RequestDispatcher rd;
rd = request.getRequestDispatcher(URL);
rd.forward(request, response);
}
public void init() throws ServletException {
}
Jsp中的代码
<DIV class=Extra>
<a href="InfoComManage?biaoshi=list&page=1">首页</a>
<%if (dopage.getNowPage() - 1 > 0) {%>
<SPAN class=Unable>
<a href="InfoComManage?biaoshi=list&page=<%=(dopage.getNowPage() - 1)%>">上一页
</a>
</SPAN>
<%}
if (dopage.getNowPage() + 1 <= dopage.getTotalPage()) {
%>
<a href="InfoComManage?biaoshi=list&page=<%=(dopage.getNowPage() + 1)%>">下一页</a>
<%}%>
<a href="InfoComManage?biaoshi=list&page=<%=dopage.getTotalPage()%>">末页
</a>
</DIV>
分享到:
相关推荐
- `prevPage` 和 `nextPage` 方法:分别用于跳转到上一页和下一页。 3. **.babelrc**: 这个文件包含了Babel的配置,Babel是一个JavaScript编译器,用于将ES6+的新特性转换为浏览器兼容的ES5代码,确保项目在老旧...
`FormView`的分页可以帮助用户更有效地浏览大量数据,提供上一页、下一页、总页数、当前页数、首页和末页等导航元素。下面将详细讲解如何在`FormView`中实现这些功能。 1. **设置数据源** 首先,`FormView`需要一...
- 首页/末页:跳转到数据的开始或结束。 3. 分页实现方法: - 前端分页:在客户端进行数据分页,通常通过JavaScript实现。优点是页面响应快,但当数据量过大时,可能导致页面加载慢。 - 后端分页:在服务器端...
这是一个类,可以通用,只要传入两个参数即可,一个是个query,一个是操作的字符;...字符char ch代表操作:‘a’就是all全部,'n'就是next下一页,'u'就是up上一页;'e'就是end末页,'s'就是start首页
"ListView分页显示上一页和下一页"这一主题,就是讨论如何实现ListView在用户滚动到列表底部时自动加载下一页数据,同时提供上一页的切换功能。 一、分页原理 分页的基本思想是将大量数据分为多个小部分(页)来...
为了实现上一页和下一页功能,你需要确保数据源支持分页,并在适当的时候更新数据源。这可能涉及到对ICollectionView接口的使用,或者在ViewModel中实现一个分页逻辑。 总的来说,理解并掌握WPF中的ScrollViewer...
### 上一页下一页分页代码实现与解析 #### 一、引言 在网页开发过程中,当遇到数据量较大的情况时,如何优雅地展示这些数据成为了一个亟待解决的问题。分页技术应运而生,它能够有效地管理大量数据,确保用户在...
例如,可以使用 C# 来实现数据的分页,实现上一页、下一页、第一页、最后一页的跳转逻辑等。 GridView 分页的常见问题 1. 如何实现 GridView 的分页? 2. 如何实现上一页、下一页、第一页、最后一页的跳转逻辑? 3...
在描述中提到的"qt源码分页控件"可能是开发人员自定义的一个类,它封装了分页逻辑,并提供了上一页、下一页的按钮以及输入框供用户直接输入页码。这个自定义控件通常会继承自QWidget或者QAbstractItemView,并且重写...
分页功能通常包含“上一页”和“下一页”的导航按钮,让用户能够方便地浏览数据集的不同部分。 在实现分页显示时,我们通常需要以下几个关键知识点: 1. 数据获取:首先,我们需要从数据库或其他数据源获取数据。...
实现分页的步骤一般包括设置每页显示的数据条数、获取数据总条数、计算总页数、控制当前页数变量以及能够实现翻页的功能,如首页、上一页、下一页、尾页和跳转到指定页码的实现。 根据提供的部分内容,这里涉及的...
本教程将深入讲解如何使用JSP、JSTL和Servlet在IBM WebSphere Application Server 2000(Server2000)上实现分页功能,包括首页、上一页、下一页、尾页以及自定义页数的跳转。 首先,我们需要理解JSP(JavaServer ...
通常会包括“上一页”、“下一页”以及页码选择器。每个按钮都是一个React元素,可以通过`jsx`语法创建。 5. **API通信**:如果分页是基于服务器数据,需要在改变页码时向服务器发送请求获取对应页面的数据。这可以...
看到有人问分页的问题,就写了一个,其实如果嫌自己写分页麻烦,完全可以用bootstrap分页,当然,如果你不想用插件,也可以自己写,这是我写的分页,分享给大家
在JSP页面上,用户可以通过点击页码或“上一页”、“下一页”按钮来更改当前页码,这些请求会被发送回服务器,由Action处理并返回新的分页数据。 7. **传递参数**: - 为了在Action和JSP之间传递分页信息,可以...
- 计算当前页的上一页和下一页页数。 - 使用JavaScript确定每页显示的记录数,并调用`getBookList`方法获取对应页面的数据。 #### 注意事项 - **异常处理**:在程序中加入适当的异常处理机制。 - **编码规范**:...
1. 用户界面:提供导航按钮,如“上一页”、“下一页”以及页码选择。 2. 控制器:处理用户的分页请求,计算当前页和总页数。 3. 模型:从数据库中获取指定页的数据。 **三、实现步骤** 1. **创建控制器...
- 用户界面应包含导航按钮(如“上一页”,“下一页”)和可能的页码选择器,允许用户浏览不同页面。 - 捕获这些控件的点击事件,更新PageIndex并重新执行上述步骤以显示新页面的数据。 综上所述,"WinForm-分页...
- 实现上一页和下一页功能,通过修改 `currentPage` 实现。 7. **封装组件** - 将以上逻辑封装成一个JavaScript插件,接受必要的配置参数,如每页条数、数据源、回调函数等。 - 为了方便复用,可以使用模块化...
- 提供了首页、上一页、下一页、末页等导航链接。 #### SQL查询语句解析 - **查询总记录数**: ```sql Select count(id) as AllRecord from tablename ``` - **获取当前页数据**: ```sql select top @...