新闻列表的分页查询java代码实现
作者:梦牵绕了谁的灵魂 发布时间:2022-02-24 19:46:25
标签: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>


猜你喜欢
- 目录带装饰效果的 ContainerRow 行布局和 Column列布局ListView列表组件GridView网格组件代码实现结语:左侧是
- 在自己应用的AndroidManifest.xml某个activity配置不同类型的intent-filter, 这里添加的是图片, 也可以
- Java连接SQLServer 2008数据库的步骤:1.到微软官方下载jdbc 并解压,得到sqljdbc.jar和sqljdbc4.ja
- 题目要求java实现字符串中的字母排序并输出排序后的结果分析1、创建一个字符串,赋值并将字符逐个存进数组中。String str = &qu
- 最近工作的时候发现软件里面通过查询ARP表查询某一IP对应的ARP条目的时,概率性出现查询到的ARP条目为空,一开始怀疑Ping通但是没有学
- handler在安卓开发中是必须掌握的技术,但是很多人都是停留在使用阶段。使用起来很简单,就两个步骤,在主线程重写handler的handl
- 首先,来看一下,快速排序的实现的动态图:快速排序介绍:快速排序,根据教科书说法来看,是冒泡排序的一种改进。快速排序,由一个待排序的数组(ar
- Java8实现菜单树形数据当我们打开京东商城时,左侧的菜单依次分为 * 展示,这是如何实现的呢?本篇暂不讲述前端,只讲述如何使用java8 的
- 今天学习了Spinner组件的使用,非常好用的一款组件,相当于从下拉列表中选择项目,今天收获颇多,下面给大家演示一下Spinner的使用(分
- 本文讲述了Java实现画线、矩形、椭圆、字符串功能的实例代码。分享给大家供大家参考,具体如下:import java.awt.Frame;
- java 中锁的性能提高办法我们努力为自己的产品所遇到的问题思考解决办法,但在这篇文章中我将给大家分享几种常用的技术,包括分离锁、并行数据结
- <?xml version="1.0" encoding="UTF-8"?><eh
- 一丶前言在之前我们学习了SpringBoot自动装配如何实现的,我们总结了Spring IOC的底层原理。但是我们还是不知道SpringAp
- 本文实例总结了Java编程实现生成给定范围内不重复随机数的方法。分享给大家供大家参考,具体如下:在Java中的Math类中存在一个rando
- 一、简介什么是线程池?池的概念大家也许都有所听闻,池就是相当于一个容器,里面有许许多多的东西你可以即拿即用。java中有线程池、连接池等等。
- 实现文档在线预览的方式除了上篇文章《文档在线预览(一)通过将txt、word、pdf转成图片实现在线预览功能》说的将文档转成图片的实现方式外
- JenkinsJenkins是一个开源的、可扩展的持续集成、交付、部署的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台
- Android中很多产品(比如360手机助手、网易菜单...)都采用侧滑菜单的展现形式,采用这种展现形式1、能把更多的展现内容都存放在菜单中
- 什么是TKMybatisTKMybatis 是基于Mybatis 框架开发的一个工具,内部实现了对单表的基本数据操作,只需要简单继承 TKM
- maven3 安装:安装 Maven 之前要求先确定你的 JDK 已经安装配置完成。Maven是 Apache 下的一个项目,目前最新版本是