当前位置: 首页 > article >正文

JavaWeb 带条件的分页查询

最终效果图

注意:没有带条件的时候 默认的是第一页数据

条件是组合的  sql->sql的动态变换

注意第二次查询的时候回显问题 就是填完条件后显示完当页数据ok 但是我点击第二页的时候条件还存在着

此时ListSerevlet不仅要拿到页码 页容量 还要拿到三个条件参数

封装一下条件  使得它称为一个条件类

然后把参数封装成一个条件对象

换一下email

去空格 .trim()

获取数据完毕

%在servlet里拼接的话,那么Dao里写的非空判断就一定是不为空的  -> %是字符串

作业:扩展:动态排序  orderBy(在条件类中加一个排序列 和排序方式)

前端往实体类传值,传完之后在dao写判断,也是拼接sql

但是此时?的个数我们是不知道的,怎么给(pageIndex - 1)*page.size()赋值呢

最好有两个,最多有6个

数组要长度 -> 所以我们用list ArrayList也是有序的

如果?有了我就往paramList里面添加参数

使得?的顺序是和我们参数的顺序是一致的

这个参数呢?

//把list转换为一个数组 toArray();

count()函数里加之前的if判断

if代码重复  封装 -> 拼接sql方法

为什么不返回呢?l(userCondition3sql, paramList);都是引用数据类型,类类

型数据,他们拼接修改之后指向了堆里面的同一块空间,所以不需用返回。

前端处理

 换一下:

或者

那为什么点击第二页会报错空指针异常呢?

因为前端传的name address等等数据都是空的,null调方法肯定啦

回显:点击刷新完之后,之前填写的数据依然在表单在存在!!!

都加上

我们是转发进行的的跳转  我们可以把条件对象保存到request域

有个问题:选择完条件之后,第二页没有带条件过去  导致点击第二页查询时不是查询结果所要的,只有第一页才显示满足条件的数据

我点击第二页应该是把表单进行提交  把之前的查询结果一起带到第二页

加上trim()


http://www.kler.cn/news/155518.html

相关文章:

  • 视图层与模板层
  • React如何像Vue一样将css和js写在同一文件
  • Rust多线程任务,发现有些线程一直获取不到锁【已解决】
  • 设计模式-结构型模式之装饰者设计模式
  • vscode配置代码片段
  • 吴恩达《机器学习》11-1-11-2:首先要做什么、误差分析
  • Ubuntu Linux玩童年小霸王插卡游戏
  • [MySQL]日期和时间函数
  • [Rust] 可迭代类型, 迭代器, 如何正确的创建自定义可迭代类型
  • 安防视频监控/磁盘阵列/集中云存储平台EasyCVR设备录像保活不生效原因是什么?该如何解决?
  • jdk1.8 hashmap源码阅读
  • 轻易云AI:引领企业数智化转型提升企业AI效率
  • python查询、处理、批量存入数据
  • navicat某些表为什么不按主键排序
  • linux设置主机名
  • Java研学-配置文件
  • 算法设计与实现--贪心篇
  • Spring MVC学习随笔-控制器(Controller)开发详解:控制器跳转与作用域(一)
  • “B2B+OMS方案”,赋能家电巨头构建BC订单一体化能力,促进业务增长|徐礼昭
  • 决策 Diffie-Hellman DDH 和 CDH
  • 在Springboot中操作Redis——五大数据类型
  • Python标准库:copy模块【侯小啾python领航班系列(十五)】
  • 【Java进阶】-- 设计模式
  • 关于数据劫持原理(vue2和vue3)
  • IDEA2022 Git 回滚及回滚内容恢复
  • 关于我离破500粉丝感受
  • PHP:js中怎么使用PHP变量,php变量为数组时的处理
  • 分享84个节日PPT,总有一款适合您
  • 高光谱遥感影像分类项目开源
  • 前端请求patch接口,只传入已修改字段值的字段