java 原生分页

Java基于List原生手写分页 日常工作中,一个查询功能实现分页正常都是用一些分页插件来实现,然而在一些特殊复杂业务场景下就不适用了。本文将通过基于List原生手写实现标准化分页实现思路:获取所有符合条件的数据返回List > 业务处理 > 对处理后的最终数据基于List手写分页方法计算得出准确数据进行封装通过接口传入:当前页、每页显示条数返回分页好的数据结构:总条数、总页数、当前页、每页记录数、每页结果集。 阅读详情

public class PageServlet extends HttpServlet{
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String dang1 = req.getParameter("dang");
if(dang1==null) {
dang1 = "1";
}
Integer dang = Integer.valueOf(dang1);

ProService ps = new ProService();
int count = ps.queryCount();
int totalPage = 1;
if(count%3==0) {
totalPage = count/3;
}else {
totalPage = count/3+1;
}
Page p = new Page(3, count, totalPage, dang);

List<Product> list = ps.queryAll(p);

HttpSession session = req.getSession();
session.setAttribute("proList", list);
session.setAttribute("page", p);
resp.sendRedirect("index.jsp");
}
}


public class ProService {


public int queryCount() {
Connection conn = ConnectionFactory.getConnection();
String sql = "select count(*) from product";
PreparedStatement ps;
int count = 0;
try {
ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
if(rs.next()) {
count = rs.getInt(1);
}

} catch (SQLException e) {
e.printStackTrace();
}

return count;
}

public List<Product> queryAll(Page p) {
List<Product> list =new ArrayList<>();
Connection conn = ConnectionFactory.getConnection();
String sql = "select p.* from(select rownum as rn,id,name,price,count from product)p where rn > ? and rn <= ? ";
try {
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, p.getShow()*(p.getDang()-1));
ps.setInt(2, p.getShow()*p.getDang());
ResultSet rs = ps.executeQuery();
while(rs.next()) {
long id = rs.getLong("id");
String name = rs.getString("name");
int count = rs.getInt("count");
int price = rs.getInt("price");
Product pro = new Product(id, name, price, count);
list.add(pro);
}
} catch (SQLException e) {
e.printStackTrace();
}

return list;
}
java基于原生的MySql的JDBC分页组件 java基于原生的MySql的JDBC分页组件,我没有做jsp页面,我感觉那样很low,基本上可以套用我的分页组件,对于初学者帮助很大 立即下载

相关推荐

STM32F103C8T6全桥逆变电路PWM波生成(基于HAL库)

全桥逆变电路需要两组开关管相互协同工作,故需要两路PWM控制信号,为了防止电源短路,需要保证同一桥臂的上下两个开关管不会同时导通,故两路PWM在相位上需要相差180°;为了保证高频变压器不会磁饱和,使正负半周PWM占空比相同。但是传统的互补输出达不到调节占空比调节输出电压的效果。......

weixin_45042735的博客 6025

Java 原生代码实现分页

分页的重点在于计算数据截取的起始位置和结束位置,不过通过Java 代码实现的分页,只是代码层次的分页,一般情况下分页都会通过数据库去实现,减少一次性查找的数据量。最后,在开发中使用的一般是封装好的分页工具,下边是 PageHelper 工具,具体使用请参考以下官方文档。至此,有关分页的介绍到此结束,后续如果有需要再进行补充。

swadian2008的博客 1887

S32DS IDE调试技巧:如何用条件断点精准捕获汽车电子MCU的硬件状态变化

本文详细介绍了S32DS IDE中条件断点功能在汽车电子MCU开发中的应用技巧。通过精准捕获硬件状态变化,工程师可以高效调试外设寄存器异常、时序敏感型交互等复杂场景,大幅提升汽车电子系统的开发效率。文章还提供了多种实战案例和性能优化建议,帮助开发者充分利用S32DS的调试功能。

CAT789的专栏 208

Java原生分页(简单实现不使用工具)

前言 ​ 虽然说现在目前很多主流的辅助框架可以帮我们完成分页,比如说后端的 pageHelper 、或者前端的 Layui 可以帮我们完成进行分页。 ​ 但是有必要的时候我们需要去了解原生分页的步骤过程充实自己的内功。 原生分页的实现 一、MySQL分页公式:limit [起始偏移],[显示数量] 起始偏移从0开始,当只有一个参数时表示显示多少条数据。 使用场景 MySQL分页查询:sele...

李诺轩的博客 1510

VGG16

VGG16学习笔记

一去不复返的通信er 1178

【大模型】一图看懂3D因果卷积!

本文将系统性地介绍从1D到3D的因果卷积原理,通过直观的动图演示帮助读者理解其工作机制,并重点探讨3D因果卷积在大规模视频生成中的独特价值和应用前景。

xian0710830114的专栏 2201

javaWeb原生后端条件分页查询

条件分页查询,数据访问层使用mybatis,业务层使用servlet,前端使用jsp

weixin_63975657的博客 851

浙大数值分析lab2

最可怕的一道题,题目是这样的 Root of a Polynomial A polynomial of degree nnn has the common form as p(x)=cnxn+cn−1xn−1+⋯+c1x+c0p(x)=c_n x^n + c_{n-1} x^{n-1} + \cdots + c_1 x + c_0p(x)=c​n​​x​n​​+c​n−1​​x​

yao_zou的博客 4797

用原生js手写分页功能

分页功能如下:首先,要显示的数据如下: html结构如下: 我们可以定义当前页数为pageNum,总页数为maxPage,每页显示的数据为limit条。 当前显示数据索引受pageNum和limit影响。如果是第一页,即pageNum为1时,则显示数据所对应的索引为04;第二页,pageNum为2时,为59;第三页,pageNum为3时,为10~14。用变量来表示为:(pageNum-1)limit ~ pageNumlimit所以,我们书写一个更新页面的函数,并在一开始的时候就调用该函数进行初始化页面。

qq_52607834的博客 1679

SAP MM新手避坑指南:工厂间调拨用301还是303?手把手教你选对移动类型

本文深入解析SAP MM模块中工厂间调拨的301与303移动类型,帮助新手避开常见陷阱。通过对比一步法(301)和两步法(303+305)的核心差异、适用场景及财务影响,提供清晰的决策框架和实战技巧,确保库存调拨的准确性和效率。

weixin_29223603的博客 349

华为OD机试真题2025双机位B卷 Java&Go 实现【朋友圈个数】

给定一组朋友关系,统计一下该朋友关系网中的朋友圈个数。 朋友圈的定义:一个朋友圈至少由3个朋友组成,且要求同一个朋友圈中的任意两个人都具有直接的朋友关系。 输入描述 输入一个朋友关系列表,如 Fiends =A.B],[A.C],IB,DI,其中的每一个元素 Friendsi表示 Friends[i][0)和 Friends [i][1] 是朋友关系 先输入一个数字 N 代表关系的总数,后面每条关系一行,两个成员以逗号分隔

MISAYAONE的博客 520

原生js实现分页功能

原生js分页 实现效果 一、函数封装分页 传入两个参数。第一个为要显示第几页,第二个是页面显示多少数据, Js动态操作dom插入 分页按钮 条件结构判断 是否为按钮绑定点击事件 二、使用步骤 1.html+css 代码如下(示例): <style> #idData{color:red;border:solid;text-align:center;} a{text-decoration:none;} </styl...

SugarXiXixi的博客 2695

【S32K3 MCAL配置】-1.1-GPIO配置及其应用-DIO之高低电平输出-点亮LED灯(基于MCAL)

【S32K3 MCAL配置】-1.1-GPIO配置及其应用-点亮LED灯(基于MCAL)

「汽车电子助手」的博客 1937

JAVA 分页原生代码

Pager package com.wtz.util; import java.util.List; public class Pager&lt;T&gt; { private Integer pageSize; private Integer totalRecord; private Integer totalPage; ...

泽辉的技术博客 755

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

纯手写Java原生MVC模式实现动态分页解析

纯手写Java原生MVC模式实现分页效果,JDK+Servlet+JSP+mysql技术架构,代码分享,以备不时之需!

sinat_30844883的博客 379

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Java 原生分页逻辑

分页逻辑

Lar.小布的博客 610

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

java原生代码实现分页

1、 创建分页类 public class PageBean<T> { private int pageNum; private int pageSize; private int totalRecord; private int totalPage; private List<T> list; private int start; private int end; private int fromIndex; private int toIndex

ycfllh的博客 482

java数字分页代码_JAVA 分页原生代码

Pagerpackage com.wtz.util;import java.util.List;public class Pager {private Integer pageSize;private Integer totalRecord;private Integer totalPage;private Integer currentPage;private List list;public ...

weixin_35696112的博客 108

Java_原生api分页

【代码】Java_原生api分页。

Byron__的博客 563

java分页栏总结_*Mybatis_PageHelper分页插件以及*原生的全部写法

1.插件写法 MyBatis 分页插件 - PageHelper 官网:https://gitee.com/free/Mybatis_PageHelper/ 使用方法:https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse.md 首先导入Maven依赖 <dependency> ...

大橙子_Change的博客 790

java纯原生的页面分页,纯JavaScript实现客户端的分页功能

项目简介:说明: 此项目属于医院电子病例系统,由于历史原因,整个系统后台基于Java开发,前端使用Html+CSS+原生JavaScript,项目功能模块要求必须纯JS实现,而此次的任务是为住院病例页面编写一个客户端分页功能.实现思路:1. 基于客户端分页的前提是数据已经加载完毕,所以此功能模块必须等待数据加载完毕后再加载2. 基于客户端分页的首页只需要显示24个患者信息即可3. 上一页/当前页/...

weixin_30588427的博客 205

Java 分页指南:MyBatis 和 MyBatis-Plus 分页功能详解

RowBounds 是 MyBatis 提供的一个简单分页工具类,可以在 SQL 执行时传入分页参数。

ChinaTj001的博客 2323

java 后端简单分页

好久没有搞分页了,,一般好点的项目, 都有 集成第三方 的分页插件了,直接用就好啦,根本不需要管那么多。。 可是 在 开发一个 项目的时候, 他的分页没有使用 分页插件,,而是 使用原生的 limit分页,而我又想 集成 分页插件进来。。。所以把我 绕了半天了。。。绝对是没有睡好了,,,下面 ...

chuncui2576的博客 413

Java实现手动分页

1、使用apache工具进行手动分页   import java.util.ArrayList; import java.util.List; import org.apache.commons.collections4.ListUtils; import com.alibaba.fastjson.JSON; /** * 手动分页 * @author 张林强 */ public ...

张林强的博客 1万+

多语种多场景的的分页详解

本指南详细介绍了Java后端与Vue前端的分页实现方案,涵盖框架集成和原生实现两种方式。后端部分,使用MyBatis + PageHelper插件或原生JDBC实现分页逻辑,分别通过自动拦截SQL和手动计算偏移量来实现。前端部分,使用Element UI组件或自定义分页组件,通过Vue实现分页数据的展示与交互。此外,还提供了MySQL、Oracle和SQL Server等数据库的分页SQL示例,并总结了分页的核心计算公式。该指南为开发者提供了全面的分页实现方案,适用于不同技术栈和需求场景。

这里面的代码全是错的 608
上一篇: java如何获取jsp页面上传的文件路径 20 前台jsp: <form action="AA.do?method=yktAdd" method="post" > <input type='text'
下一篇: Ajax 请求的处理
jack_czz
博客等级 码龄10年 4粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值