Java JSP实现新闻列表分页查询的完整代码

Elena
Elena
发布时间:2026-10-14| 4人浏览过
原创

本文介绍了一种在JSP中使用Java原生集合与脚本元素实现新闻列表手动分页的方法。通过模拟107条数据,利用逻辑判断计算总页数、当前页码及每页显示条数,并结合ArrayList进行截取,最终在前端展示带有上一页和下一页功能的分页效果。

构建新闻数据模型

首先需要定义一个表示新闻实体的Java类 newTest,包含编号、标题、内容和作者属性,并提供相应的构造函数与 getter/setter 方法。该类的代码如下:

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 + "]";
    }
}

JSP页面中的分页逻辑实现

在JSP文件中引入必要的包,并通过一段Java脚本块来模拟数据并执行分页算法。

第1步:初始化数据源

创建一个大小为107的 List<newTest> 集合,用于存储模拟的新闻条目。每条数据赋予唯一的ID(从1开始)和预设的内容。

第2步:计算分页参数

根据集合总长度 iTitleIndex 和每页固定显示的记录数(此处设为10),计算出总页数 iTitlePages。计算公式为:
int iTitlePages = iTitleIndex / 10 + (iTitleIndex % 10 == 0 ? 0 : 1);

第3步:处理当前页码请求

通过 request.getParameter("page") 获取用户传入的页码。若未提供或格式非法,则默认第一页;若越界(小于1或大于总页数),则分别修正为第1页或最后一页。

第4步:截取当前页数据进行展示

创建一个新的集合 listPage。使用循环将原集合中对应索引范围的数据添加到新集合中。特别注意当处于最后一页时,循环次数应为剩余数据的数量,以避免数组越界异常。最后通过表格将这些数据输出到前端界面,并根据当前页码动态生成“上一页”和“下一页”链接。

以上就是Java JSP实现新闻列表分页查询的详细内容,更多关于Java开发技巧的资料请关注本站其它相关文章!
相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。