分页实现-----首页、上一页、下一页、最后一页
分页实现
例:
首页、上一页、下一页、最后一页
Bean中的代码
public class doPage {
//定义当前页
private int nowPage;
//定义每页显示的条数
private int pageSize;
//定义一个根据上述条件查询出的数据List
@SuppressWarnings("unchecked")
private List list;
//定义一个总的页数
private int totalPage;
public int getTotalPage() {
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public List getList() {
return list;
}
public void setList(List list) {
this.list = list;
}
public int getNowPage() {
return nowPage;
}
public void setNowPage(int nowPage) {
this.nowPage = nowPage;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
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) {
// TODO Auto-generated catch block
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>
分页实现-----首页、上一页、下一页、最后一页相关推荐
- 手机端安卓、苹果的分页逻辑:上拉、下拉动作
手机端安卓.苹果的分页逻辑: 大方向:与传统分页逻辑不同,上拉取"时间点"之后的数据,下拉取"时间点"之后的数据: 核心参数设计: timestamp:时间点, ...
- html分页首页上一页下一页,HTML静态分页(形如:首页,上一页,下一页,尾页)...
在HTML中有时候我们会用到静态分页,一次拿回一定量的数据结果条目,我们会以形如:第2页,共12页 首页 上一页 下一页 尾页 的方式进行静态分页,以下是该种静态分页的代码,供兄弟姐妹们参考. fu ...
- (首页上一页下一页尾页 + 下拉框跳转)分页功能
说在前头(本人用的是bootstrap +jQuery 和 struts2 + MVC)不影响分页功能 制作一个分页功能: 效果如下: 由上图可知,此功能只适合页数不是特别多的情况下,页数多的时候, ...
- GridView自定义分页样式(上一页,下一页,到第几页)(新手教程)
今天要为网站做一个文章列表,发现GridView的分页样式很难看,于是结合网上的例子,自己做了一个.不是很美观,不过还是很实用的,先看下效果吧,如图(1).演示地址http://www.veryam. ...
- php分页上一页下一页判断,分页(上一页,下一页)
实现功能:出现首页,下一页,上一页,尾页 $pagesize=2;//分页,已知每页显示几条记录,$pagesize //我们通过在地址栏传递page参数的形式获得当前是第几页,?page=1就是第一 ...
- Jquery分页之(上一页,下一页)
Jquery分页之(上一页,下一页) 在工作中我们会经常用到分页功能,除了数据库实现分页查询和调用分页插件,前端也可以实现分页查询,接下来就有我来带着大家实现一个简单的分页效果. 分页就是将将过多的结 ...
- 简单分页,无需插件 实现 上一页|下一页 分页功能
分页功能 五花八门,插件的使用也很方便.最近做项目,分页功能是写好的了,利用bootstarp 简单实现的, 类似于这种 但由于数据越来越多,这种循环的方式很不好看.于是想到上一页| 下一页 分页 的 ...
- java实现的分页方法(上一页下一页)
/**按上一页下一页分页的方法 * @param jspName文件名(显示上一页.下一页) * @param currentPage 当前页 * @param zs 记录总数 ...
- php分页不跳转,分页源代码,分页时上一页下一页不显示,但可以跳转
分页源代码,分页时上一页下一页不显示,但可以跳转 $sql="select * from product where pronum like'%$key%' or pdes like '%$ ...
- php分页上一页下一页判断,一个分页函数:显示“上一页下一页”等
'************************************************** '函数名:ShowPage '作 用:显示"上一页 下一页"等信息 '参 数 ...
最新文章
- 【实验吧】CTF_Web_简单的SQL注入之1
- qt+vs2017环境下XIMEA相机库的配置
- boost::histogram::accumulators::count用法的测试程序
- python编程入门第一课_python入门前的第一课 python怎样入门
- python字典(dict)合并的操作
- html select选择事件_用 Java 拿下 HTML 分分钟写个小爬虫
- jquery Ajax应用
- typo(ruby的开源blog)系统的安装
- 是什么让你的ExtJS应用程序运行缓慢?
- 第十章:基本数据结构(2)
- oracle11g数据库登录01017,sqlplus登录Oracle时ORA-01017: invalid username/password; logon denied的错误...
- gtasa手机版android7.1,圣安地列斯psp移植版
- 卡麦吉梅隆大学 计算机排名,2019年卡内基梅隆大学信息系统排名
- 【福利帖】当我谈学习视觉时,我谈些什么
- Git提交数据失败 error: failed to push some refs to 'https://github.com/XXXXXXX/gif.git'
- 实现一个简单的H5领红包的动画
- Python使用PuLP第三方库解决线性规划问题
- 腾讯qq企业邮箱登录入口界面如何设置
- 记住要仰望星空,不要低头看脚下!
- 乘风破浪会有时,直挂云帆济沧海