dao方法:

package com.ruojuan.Dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;import com.ruojuan.entity.News;
import com.ruojuan.util.DBHelper;public class NewsDao {//扩大作用域//三兄弟private Connection con = null;private PreparedStatement ps = null;private ResultSet rs = null;/*** 查询新闻的id 标题,作者* @return 新闻的集合* */public List<News> getAll(){List<News> ls=new ArrayList<News>();try {//创建连接con=DBHelper.getCon();//定义sql语句String sql="select nid,ntitle,nauthor from tb_news order by nid desc";//获得执行对象ps=con.prepareStatement(sql);//获得结果集rs=ps.executeQuery();//循环遍历while(rs.next()){//实例化新闻对象News n=new News();//给对象赋值n.setNid(rs.getInt(1));n.setNtitle(rs.getString(2));n.setNauthor(rs.getString(3));//加到集合中ls.add(n);}} catch (Exception e) {e.printStackTrace();} finally {DBHelper.myClose(con, ps, rs);}return ls;}/*** 分页代码的第一版* @return 返回page*/public List<News> getAll(int pageIndex,int pageSize){List<News> ls=new ArrayList<News>();//找规律int a = (pageIndex-1)*pageSize+1;int b = pageIndex*pageSize;try {//创建连接con=DBHelper.getCon();//定义sql语句String sql="select * from(\r\n" + "       select a.nid,a.ntitle,a.nauthor,rownum as rid from tb_news a order by nid desc\r\n" + ") b where b.rid between ? and ?";//获得执行对象ps=con.prepareStatement(sql);//给占位符赋值ps.setInt(1, a);ps.setInt(2, b);//获得结果集rs=ps.executeQuery();//循环遍历while(rs.next()){//实例化新闻对象News n=new News();//给对象赋值n.setNid(rs.getInt(1));n.setNtitle(rs.getString(2));n.setNauthor(rs.getString(3));//加到集合中ls.add(n);}} catch (Exception e) {e.printStackTrace();} finally {DBHelper.myClose(con, ps, rs);}return ls;}//分页代码2:/*** 获得总行数* @param str 表名* @return*/public int getRows(String str) {int n = 0;try {con = DBHelper.getCon();//定义sql语句String sql = "select count(*) from "+str;//获得sql语句ps = con.prepareStatement(sql);//获得执行对象rs = ps.executeQuery();if(rs.next()) {n = rs.getInt(1);}} catch (Exception e) {// TODO: handle exceptione.printStackTrace();} finally {DBHelper.myClose(con, ps, rs);}return n;}/*** 第二版分页代码* @param pageIndex 第几页* @param pageSize 一页几行* @return*/public List<News> getpage(int pageIndex,int pageSize){List<News> ls=new ArrayList<News>();//找规律int a = (pageIndex-1)*pageSize+1;int b = pageIndex*pageSize;try {//创建连接con=DBHelper.getCon();//定义sql语句String sql="select * from(\r\n" + "  select a.*,rownum as rid from(\r\n" + "         select nid,ntitle,nauthor from tb_news order by nid desc\r\n" + "  ) a\r\n" + ") b where b.rid between ? and ?\r\n" + "";//获得执行对象ps=con.prepareStatement(sql);//给占位符赋值ps.setInt(1, a);ps.setInt(2, b);//获得结果集rs=ps.executeQuery();//循环遍历while(rs.next()){//实例化新闻对象News n=new News();//给对象赋值n.setNid(rs.getInt(1));n.setNtitle(rs.getString(2));n.setNauthor(rs.getString(3));//加到集合中ls.add(n);}} catch (Exception e) {e.printStackTrace();} finally {DBHelper.myClose(con, ps, rs);}return ls;}/*** 带模糊查询的分页(根据表)* @param pageIndex 第几页* @param pageSize 一共几页* @param title* @return*/public List<News> getpage(int pageIndex,int pageSize,String title){List<News> ls=new ArrayList<News>();//找规律int a = (pageIndex-1)*pageSize+1;int b = pageIndex*pageSize;try {//创建连接con=DBHelper.getCon();//定义sql语句String sql="select * from(\r\n" + "  select a.*,rownum as rid from(\r\n" + "         select nid,ntitle,nauthor from tb_news where ntitle like '%"+title+"%' order by nid desc\r\n" + "  ) a\r\n" + ") b where b.rid between ? and ?\r\n" + "";//获得执行对象ps=con.prepareStatement(sql);//给占位符赋值ps.setInt(1, a);ps.setInt(2, b);//获得结果集rs=ps.executeQuery();//循环遍历while(rs.next()){//实例化新闻对象News n=new News();//给对象赋值n.setNid(rs.getInt(1));n.setNtitle(rs.getString(2));n.setNauthor(rs.getString(3));//加到集合中ls.add(n);}} catch (Exception e) {e.printStackTrace();} finally {DBHelper.myClose(con, ps, rs);}return ls;}
}

界面:

     <%//编码方式request.setCharacterEncoding("utf-8");//获得下拉框的值String aa = request.getParameter("sel");//接收titleString title = request.getParameter("title");if(title==null){title = "";//相当于查询全部}
/*          //破碎重组title = new String(title.getBytes("iso-8859-1"),"utf-8");*/  NewsDao nd=new NewsDao();//传参int pageIndex = 1;int pageSize = 5;//接收pidString pid = request.getParameter("pid");if(pid!=null){//说明点击了上一页或者下一页pageIndex = Integer.parseInt(pid);//说明改变pageIndex的值}//计算最大页码int rows = nd.getRows("tb_news where ntitle like '%"+title+"%'");int max = rows/pageSize;//13/5=2 if(rows%pageSize!=0){//如果除不尽  有余数max++;//+1}//调用查询的方法List<News> ls=nd.getpage(pageIndex, pageSize,title);//循环遍历for(News n:ls){//n:新闻对象%><li> <a href="/s7/news/read.jsp?nid=<%=n.getNid() %>"><%=n.getNtitle() %></a> <span> 作者:<%=n.getNauthor() %>     <a href='/s7/news/update.jsp?nid=<%=n.getNid()%>'>修改</a>      <a href='/s7/news/dodelete.jsp?nid=<%=n.getNid() %>' onclick='return clickdel()'>删除</a> </span> </li><%}%><div></div><li class='space'></li><p align="right"> 当前页数:[<%=pageIndex %>/<%=max%>]&nbsp; <a href="admin.jsp?pid=1&title=<%=title%>">首页</a><a href="admin.jsp?pid=<%=pageIndex>1?pageIndex-1:1%>&title=<%=title%>">上一页</a><a href="admin.jsp?pid=<%=pageIndex<max?pageIndex+1:max%>&title=<%=title%>">下一页</a><a href="admin.jsp?pid=<%=max%>&title=<%=title%>">末页</a> </p></ul>

javaweb 分页代码相关推荐

  1. Javaweb分页技术实现

    Javaweb分页技术实现 分页技术就是通过SQL语句(如下)来获取数据,具体实现看下面代码 //分页查询语句 select * from 表名 where limit page , count; 和 ...

  2. Java源码 JavaWeb开发框架 代码 SSH SSM OA ERP CRM Java项目[Java通用框架源码及开发视频教程]

    Java源码 JavaWeb开发框架 代码 SSH SSM OA ERP CRM Java项目 功能简介: A.代码生成器(开发利器) 生成Java各层次的类和JSP等文件,提高开发效率 B.阿里巴巴 ...

  3. mysql通用分页_MySQL海量数据的通用存储过程分页代码

    本节主要内容: MySQL海量数据的通用存储过程分页代码 本节为大家分享一例mysql 通用存储过程分页.海量数据分页的代码. 1,测试用的表结构: 复制代码 代码示例: CREATE TABLE I ...

  4. PHP分页代码实例教程

    PHP分页代码实例教程 分享一段php分页代码,很简单,作为php分页的入门教程不错. 专题推荐:php分页代码大全    php分页原理     php分页类 数据库链接及参数设定 //数据库连接 ...

  5. 解决JavaWeb项目代码报错

    解决JavaWeb项目代码报错 说明:JavaWeb项目代码报错的处理流程 处理流程 重新执行代码,避免上一次运行错误的影响 查看Tomcat报错信息 参考文章:idea中查看错误日志 如果是在ide ...

  6. php mysql ajax 分页_ajax+php+mysql无刷新分页代码(1/2)_PHP教程

    ajax+php+mysql无刷新分页代码 ajax+php教程+mysql教程无刷新分页代码 2 3 4投票结果 5 6 7 8 9 function getxmlhttpobject() 10 { ...

  7. 分页原理+分页代码+分页类制作

      分页显示是一种非常常见的浏览和显示大量数据的方法,属于web编程中最常处理的事件之一.对于web编程的老手来说,编写这种代码实在是和呼吸一样自然,但是对于初学者来说,常常对这个问题摸不着头绪,因此 ...

  8. php模型分页代码,ThinkPHP6.0模型关联分页

    模型关联分页简单案例,标签关联文章,对文章进行分页,上一篇文章写得比较繁琐,这里可以将问题拆解成一对多关系,那么问题就迎刃而解了. 我们可以通过查询tag直接拿到tag_id,通过中间表和文章表关联一 ...

  9. php ajax 分页phpapi,ajax分页_php ajax分页代码

    摘要 腾兴网为您分享:php ajax分页代码,智慧农业,长沙银行,一折包邮,信和财富等软件知识,以及381.65,红娘牵线,中经油马,战地小,歌词制作,唯美会,微软必应输入法,邓州在线,螺丝钉,侠客 ...

最新文章

  1. 根据前序、中序序列重建一棵二叉树的代码实现
  2. 分布式文件服务器FastDFS
  3. js请求结果拦截机器_分享:一步一个脚印,vue入门之axios的应用及拦截封装
  4. Hadoop vs Spark
  5. 为内存密集型应用程序转义JVM堆
  6. Windows服务卸载之后未重启机器之前再安装问题
  7. 微软将开放神经网络交换格式贡献给 Linux 基金会
  8. 抗滑桩初始弹性系数计算_抗滑桩配筋计算.docx
  9. 思杰技术的论坛网址(转)
  10. python csv数据所在行_使用python获取csv文本的某行或某列数据的实例
  11. 深度学习TF—10.循环神经网络RNN及其变体LSTM、GRU实战
  12. Sublime Text3:解决win10输入法输入框不跟随问题
  13. vue组件之间互相传值:兄弟组件通信
  14. 纳米金13nm|金属纳米粒子/Nano gold制备方法-齐岳生物
  15. miniblink每日最新下载地址
  16. 关于MSP430单片机程序烧写的介绍
  17. laravel--6 eloquent查询作用域
  18. 2017年度全球一级市场“投资龙虎榜”发布 | 钛媒体Pro独家
  19. Cesium — orientation计算
  20. 奇迹网站系统IGC奇迹mu S18网站可视化装备模板

热门文章

  1. HTTP 最强资料大全
  2. 假信息正在伤害孩子!作为信息时代的原住民,孩子如何辨别信息真伪?
  3. Runas命令:能让域用户/普通User用户以管理员身份运行指定程序
  4. AndroidUtilCode 最强大的工具类
  5. 31次课(iptables filter表案例、iptables nat表应用)
  6. 性能测试怎么监控服务器,性能测试篇 :Jmeter监控服务器性能
  7. Oracle查看连接池
  8. 【java】 【接口】【继承】【抽象类】案例 运动员和教练
  9. envi读取格式ang 还是mtl_ENVI学习笔记一 软件入门
  10. 短视频批量伪原创破解 苹果手机md5视频修改工具下载