新闻列表的分页查询java代码实现

本文实例为大家分享了新闻列表分页查询的java代码,供大家参考,具体内容如下

package com.ibeifeng.test;
//创建新闻测试类
public class newTest {
private long id;
private String title;
private String content;
private String author;

public newTest() {
  super();
}

public newTest(long id, String title, String content, String author) {
  this.id = id;
  this.title = title;
  this.content = content;
  this.author = author;
}

public long getId() {
  return id;
}

public void setId(long id) {
  this.id = id;
}

public String getTitle() {
  return title;
}

public void setTitle(String title) {
  this.title = title;
}

public String getContent() {
  return content;
}

public void setContent(String content) {
  this.content = content;
}

public String getAuthor() {
  return author;
}

public void setAuthor(String author) {
  this.author = author;
}

@Override
public String toString() {
  return "newTest [id=" + id + ", title=" + title + ", content=" + content
      + ", author=" + author + "]";
}

}
2.开始查询
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="com.ibeifeng.test.newTest"%>
<%
  String path = request.getContextPath();
  String basePath = request.getScheme() + "://"
      + request.getServerName() + ":" + request.getServerPort()
      + path + "/";
%>
<%
  List<newTest> list = new ArrayList<newTest>(107);//设定新闻行数为107行
  for (int i = 1; i <= 107; i++) {//list中添加新闻
    newTest news = new newTest(0L + i, i + "里约奥运", "马龙获得金牌-世界乒坛第五位男子“大满贯”得主", "福音");

    list.add(news);
  }//end of for...添加107条数据到集合中
    //int pageIndex=10;
  int iTitleIndex = list.size();//获取集合下表标
  int iTitlePages = iTitleIndex / 10
      + (iTitleIndex % 10 == 0 ? 0 : 1);//获取页数的总数
  int ipage = 4;//开始的页数

  String str = request.getParameter("page");
  if (str != null && !str.trim().equals("")) {
    int newPage = Integer.valueOf(str);

    if (newPage < 1) {
      ipage = 1;
    } else if (newPage > iTitlePages) {
      ipage = iTitlePages;
    } else {
      ipage = newPage;
    }
  }
  //创建一个新的集合(大小每个页面显示的新闻总数) 将107条数据分别存储到其中
  List<newTest> listPage = new ArrayList<newTest>(10);
  int ipa = 10;//获取循环体的循环次数//最后一页只有七条数据
  if (ipage == iTitlePages) { //当当前页数为最后一页时,剩余几行则循环体之执行剩余的行的数次,
    ipa = list.size() - (iTitlePages - 1) * 10;
  }
  for (int i = 0; i < ipa; i++) { //i=0;获取前十个数据 第一次循环时ipage=4
    newTest arr = list.get(i + (ipage - 1) * 10);
    listPage.add(arr);
  }
%>
<html>
<body>
  <table>
    <tr>
      <th>标题</th>
      <td>作者</td>
      <td>摘要</td>
    </tr>
    <%
      for (int i = 0; i < listPage.size(); i++) { //java代码需要用<% %》保护起来否则会被当做web语句执行
        newTest temp = listPage.get(i);
    %>
    <tr>
      <td><%=temp.getTitle()%></td>
      <td><%=temp.getAuthor()%></td>
      <td><%=temp.getContent()%></td>
    </tr>
    <%
      }//end of for...
    %>
  </table>

  <%
    boolean bFirst = ipage == 1;
    boolean bLast = ipage == iTitlePages ;
  %>

  <%
    if (!bFirst) {
  %>
  <a href="test.jsp?page=<%=ipage - 1%>&totopage=11">上一页</a>
  <%
    }
  %>
     
  <!-- 当跳转到第一页时不再显示“上一页”提交对话框,下同 -->
  <%
    if (!bLast) {
  %>
  <a href="test.jsp?page=<%=ipage + 1%>&totopage=11">下一页</a>
  <%
    }
  %>第<%=ipage%>页   共<%=iTitlePages%>页
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Java Web 简单的分页显示实例代码

    本文通过两个方法:(1)计算总的页数. (2)查询指定页数据,实现简单的分页效果. 思路:首先得在 DAO 对象中提供分页查询的方法,在控制层调用该方法查到指定页的数据,在表示层通过 EL 表达式和 JSTL 将该页数据显示出来. 先给大家展示下效果图: 题外话:该分页显示是用 "表示层-控制层-DAO层-数据库"的设计思想实现的,有什么需要改进的地方大家提出来,共同学习进步.废话不多说了,开始进入主题,详细步骤如下所示: 1.DAO层-数据库 JDBCUtils 类用于打开和关闭数据

  • Java分页查询--分页显示(实例讲解)

    当数据库中数据条数过多时,一个页面就不能显示,这是要设置分页查询,首先要使用的是数据库sql语句的limit条件实现分组查询 sql语句大概形式为: select * from table limit 开始索引,显示条数 用该语句就会实现分块查询,并且每页显示固定条数. 首先要实现后台分页,我们需要知道它有多少页,每页有多少行,这就需要知道一共多少行,调用sql语句时还需要知道每一页的开始索引,开始索引是根据当前页数算出来的,所以还需要知道当前页数,查询后会返回一个列表存储当前页数据.将这些属性

  • 新闻列表的分页查询java代码实现

    本文实例为大家分享了新闻列表分页查询的java代码,供大家参考,具体内容如下 package com.ibeifeng.test; //创建新闻测试类 public class newTest { private long id; private String title; private String content; private String author; public newTest() { super(); } public newTest(long id, String titl

  • 基于JS实现新闻列表无缝向上滚动实例代码

    当新闻较多,并且空前有限的时候,使用滚动是一个不错的选择,本章节就通过代码实例介绍一下如何实现此效果. 代码实例如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.jb51.net/" /> <title>文字列表无缝向上滚动代码<

  • spring data jpa分页查询示例代码

    最近项目上用就hibernate+spring data jpa,一开始感觉还不错,但是随着对业务的复杂,要求处理一些复杂的sql,就顺便研究了下,把结果记录下,以便日后查看.用到Specification,需要继承JpaSpecificationExecutor接口.(下面代码有的分页从0开始作为第一页,有的从1开始作为作为第一页,我也忘记,请自己测试) DAO层: import java.util.List; import org.springframework.data.domain.Pa

  • SQL分页查询存储过程代码分享

    话不多说,请看代码 ------------------------------------- -----作者:张欣宇 -----时间:2013-06-28 -----简介:根据参数和条件分页查询 ------------------------------------- Create proc [dbo].[Up_PagingQueryByParameter] ( ----- 表名或能查询到结果的SQL语句{SQL语句左右必须有括号例:(select * from tbl1)} @TableN

  • SQL Server 分页查询存储过程代码

    复制代码 代码如下: CREATE PROCEDURE [dbo].[up_Pager] @table varchar(2000), --表名 @col varchar(50), --按该列来进行分页 @orderby bit, --排序,0-顺序,1-倒序 @collist varchar(800),--要查询出的字段列表,*表示全部字段 @pagesize int, --每页记录数 @page int, --指定页 @condition varchar(800) --查询条件 AS DECL

  • MVC+EasyUI+三层新闻网站建立 分页查询数据功能(七)

    MVC新闻网站建立,完成分页查询数据功能. 1.在Model里面建立NewInfo(里面存放的是新闻信息的实体信息) 然后在DAL层中建立NewInfoDal (里面存放对新闻信息的操作) 写入分页查询的代码 /// <summary> /// 分页查询 /// </summary> /// <param name="start">分页开始条数</param> /// <param name="end">分

  • JAVA代码实现MongoDB动态条件之分页查询

    一.使用QueryByExampleExecutor 1. 继承MongoRepository public interface StudentRepository extends MongoRepository<Student, String> { } 2. 代码实现 使用ExampleMatcher匹配器-----只支持字符串的模糊查询,其他类型是完全匹配 Example封装实体类和匹配器 使用QueryByExampleExecutor接口中的findAll方法 public Page&

  • 使用Bootstrap4 + Vue2实现分页查询的示例代码

    写在前面 工程为前后端分离设计,使用Nginx为前端资源服务器,同时实现后台服务的反向代理.后台为Java Web工程,使用Tomcat部署服务. 前端框架:Bootstrap4,Vue.js2 后台框架:spring boot,spring data JPA 开发工具:IntelliJ IDEA,Maven 实现效果: 会员信息 如何使用Bootstrap+Vue来实现动态table,数据的新增删除等操作,请查看使用Bootstrap + Vue.js实现表格的动态展示.新增和删除.交代完毕,

  • Java精品项目瑞吉外卖之新增菜品与分页查询篇

    目录 一. 新增菜品 1.1需求分析 1.2代码开发 API 代码 二. 分类信息分页查询 三. 删除分类 3.1 需求分析 3.2 核心代码 四. 修改分类 一. 新增菜品 1.1需求分析 后台系统可以管理分类信息,分类菜品分类和套餐分类.当我们在后台系统添加菜品时需要选择一个菜品分类. 当我们在后台系统中添加一个套餐时需要选择一个套餐分类,在移动端也会按照菜品分类和套餐分类来展示对应的菜品和套餐. 同时,在后台系统的分类管理页面分别添加菜品分类与套餐分类: 添加菜品分类 添加套餐分类 数据模

  • Java实现分页查询功能

    分页查询 分页查询将数据库中庞大的数据分段显示,每页显示用户自定义的行数,提高用户体验度,最主要的是如果一次性从服务器磁盘中读出全部数据到内存,有内存溢出的风险 真假分页 假分页: 其原理还是将所有的数据读到内存中,翻页从内存中读取数据, 优点: 实现简单,性能高 缺点:如果数据大容易造成内存溢出真分页: 每次翻页从数据库查询数据(即磁盘) , 优点 : 不容易造成内存溢出 缺点: 实现复杂,性能相对低一些 分页效果 一般分页的功能包括: 首页 上一页 下一页 末页 当前是多少页 总共多少页 一

随机推荐