javaWeb项目中分页和模糊查询技术

2023-11-16

分页

需求: 登录成功后,展现全部时,出现分页.

思路:

前端

       1 设置分页按钮,以及分页数据(页码,总页数,总条数)

       2 设置分页请求,即点击上一页,下一页时发请求

后端

       3 web.xml映射,映射到Servlet能接收请求

       4 Dao查询分页数据

执行:

1 设置分页按钮,以及数据展现的位置

2 数据此时就需要展现

   --> 即登录成功查询全部展现时,就需要查出多少条数据,总共多少页

3 第一次登录成功,查询全部时,已经分页展现了,默认展现的是第一页

4 后续再下一页,就是在当前页加1

 

登录成功后,做的动作

1 获得当前页码,没有获得的到当前页码,认为是第一页pageNo=1

2 获得了总条数 total(从数据库中查询)

3 计算出了总页数 pageCount

4 计算出了limit所需要的,limit start,end

start = (pageNo-1)*pageSize

end = pageSize

5 根据start,end,查询数据库,查出当前页中的pageSize条(3条)数据

6 将一系列数据(pageNo,total,pageCount,list)放到请求域中,在首页取出展现

点击下一页时,发出请求/user/list?pageNo=${pageNo+1}

       即/user/list?pageNo=2

 

此时,Servlet接收请求,

1 获得当前页码,获得的到当前页码2

2 获得了总条数 total

3 计算出了总页数 pageCount

4 计算出了limit所需要的,limit start,end

start = (pageNo-1)*pageSize

end = pageSize

5 根据start,end,查询数据库,查出当前页中的pageSize条(3条)数据

6 将一系列数据(pageNo,total,pageCount,list)放到请求域中,在首页取出展现

模糊查询(select * from user where username = ? limit ?,?)

需求: 在展现全部时,输入关键字,搜索数据

固定字段模糊查询

需求: 输入框,只能输入名字.即只能根据名字查询

前端

       1 在首页设置输入框,输入名字

       2 设置搜索按钮,点击将”关键字”发送到后台 à form表单发请求,将数据发送到Servlet

后端

       3 修改UserListServlet类

              接收模糊查询关键字

              设置参数传递到Dao

                            Dao要根据参数,进行动态SQL处理

可选条件的模糊查询

前端

       设置选择下拉框,可以根据下拉选择要搜索的条件

       搜索的条件要和关键词一起发送到后台

后台

       接收搜索条件字段,并进行判断从新赋值

 

拼接sql语句进行搜索查询 

模糊查询后分页功能及分页数据

模糊查询后的条数                 

     满足条件拼接字符串,进行筛选查询

 

模糊查询后的页数

模糊查询后的下一页等

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

javaWeb项目中分页和模糊查询技术 的相关文章

  • JSP和JavaBean

    8 JSP 8 1 什么是JSP Java Servlet Pages java服务器端页面 也和Servlet一样 用于实现动态Web技术 最大特点 写JSP就像是写HTML 区别 HTML只给用户提供静态的数据 JSP页面中可以嵌入Ja
  • Elasticsearch知识点

    目录 1 什么是Elasticsearch 2 Elasticsearch的特点 3 Elasticsearch基础概念 4 Elasticsearch基本数据类型 看这里 5 Elasticsearch基本检索类型 5 1 检索和过滤 5
  • 使用idea创建java web项目

    创建web项目有很多方法 就说一个最简单的方法吧 创建一个java项目 点击创建 右击项目选择添加框架支持 勾选上web应用程序 点击确定 再点击当前文件 编辑配置 点击加号 选择Tomcat服务器 本地 也可以选择其他服务器 点击配置 选
  • JDBC讲解

    SUN公司于1996年提供了一套访问数据库的标准Java类库 即JDBC 一 什么是JDBC JDBC的全称是Java数据库连接 Java Database Connectivity 它是一套用于执行SQL语句的Java API 应用程序可
  • 数据库设计DDL

    DDL 数据定义语言 用来定义数据库对象 数据库 表 DDL 数据库操作 查询 查询所有数据库 show databases 查询当前数据库 select database 使用 使用数据库 use 数据库名 创建 创建数据库 create
  • 配置Nginx以隐藏访问端口

    进入usr local nginx conf 编辑nginx conf文件 在http模块中加入下句 include vhost conf 进入usr local nginx conf vhost xxx conf 编写如下内容 nginx
  • JSP、JSTL标签

  • ie11对象不支持此属性和方法 ie11的缓存问题

    更改eclipse的js代码 在ie11上调试 发现调用新更改的方法 在ie11的console输出里 一直提示 对象不支持此属性和方法 点击右上角设置图标 然后点击Internet选项 在常规选项卡里的 浏览器历史记录 点击设置 在弹出的
  • spring的jdbcTemplate批量添加数据,单条数据中文正常,多数据第二条数据开始中文乱码

    今天用spring的jdbcTemplate org springframework jdbc core JdbcTemplate 批量添加数据 方法是jdbcTemplate bathUpdate 然后遇到一个很神奇的问题 批量添加的数据
  • idea中Java Web项目的访问路径问题

    说明 这里只以 servlet 为例 没有涉及到框架 但其实路径的基本原理和框架的关系不大 所以学了框架的同学如果对路径有疑惑的也可以阅读此文 项目结构 在 idea 中新建一个 Java Web 项目 项目的初始结构如下 不同版本的 id
  • java_web:基于三层架构实现学生信息管理1.0(对学生信息的增删改查)

    学生信息管理1 0 涉及的知识点 三层架构理论 简单理解三层架构就是 上层调用下层 下层为上层提供服务 最上层 视图层 由jsp servlet组成 中间层 服务层 组装数据访问层所实现的功能 最下层 数据访问层 实现单一得某项功能 为服务
  • JAVA-WEB项目中,前后台结合AES和RSA对数据加密处理

    实际项目中为了系统安全 我们经常需要对请求数据和响应数据做加密处理 这里以spring后台 vue前台的java web为例 记录一个实现过程 一 为什么要结合AES和RSA 因为AES是对称加密 即加密解密用的秘钥是一样 这样一来AES的
  • Sping之自动注入-1

    最近终于能静下心来 一步步的学习Java Web开发 在学习的过程中 遇到太多的问题 一开始好些问题真是不知道怎么解决 在这里要非常感谢 Sping In Action 一书的作者 感谢他能写出此书 让我受益匪浅 您辛苦了 本着 相互学习
  • 【EasyExcel】 模板填充批量导出,多文件以zip压缩包格式导出

    使用 阿里巴巴的 EasyExcel 填充 excel模板导出 需要支持批量操作 即一个模板循环导出多份 在网上找了下其他大佬们的做法 没有找到想要的 很多都是要先生成excel文件 再压缩导出 但我不想这样做 想直接通过文件流的方式 直接
  • 解决Jenkins插件不能下载安装的问题

    安装到这一步 显示无法下载Jenkins插件 安装中升级站点 如果你还在安装过程中 遇见这个问题 你可以打开一个新的网页 输入网址http localhost 8080 pluginManager advanced 在最下面的升级站点 把其
  • response实现文件下载(java)

    import javax servlet ServletException import javax servlet ServletOutputStream import javax servlet http HttpServlet imp
  • Spring容器和应用上下文理解

    有了Spring之后 通过依赖注入的方式 我们的业务代码不用自己管理关联对象的生命周期 业务代码只需要按照业务本身的流程 走啊走啊 走到哪里 需要另外的对象来协助了 就给Spring说 我想要个对象 于是Spring就很贴心的给你个对象 听
  • 【JavaWeb】网络原理初识

    网络原理初识 计算机网络的历史 局域网和广域网 网络组件中的重要设备 网络通信基础 基本概念 协议分层 OSI七层模型 TCP IP五层 或四层 模型 封装和分用 发送方 接收方 三层转发和二层转发 计算机网络的历史 计算机最初是为了打仗而
  • IDEA2021从零开始搭建SSM框架手把手详细教程 (一)

    开发环境 macos IDEA 2021 mysql8 0 toma9 0 源码 https download csdn net download a2267542848 19730797 1 基本环境搭建 1 新建工程 新建后整个目录如下
  • JDBC基本概念

    什么是JDBC JDBC概念 JDBC Java DataBase Connectivity 是一套统一的基于Java语言的关系数据库编程接口规范 该规范允许将SQL语句作为参数通过JDBC接口发送给远端数据库 远端数据库接收到SQL语句后

随机推荐

  • 将Vmware虚拟机磁盘映射到本地实现文件传输

    文章目录 前言 一 在ubuntu上搭建samba服务器并设置共享文件夹 二 查询虚拟机ip 三 确保本地和虚拟机网络互通 四 映射网络驱动器 五 文件传输测试 前言 将虚拟机磁盘映射到本地 可以实现文件互传 更方便使用 在开发时可以替代S
  • python实现GA-GRU遗传算法优化门控循环单元多变量时间序列预测

    GA GRU遗传算法优化门控循环单元多变量时间序列预测是一个比较复杂的问题 需要一定的编程和数学基础 下面是一个简单的Python实现 供参考 首先 我们需要导入相关的库 python import numpy as np import p
  • setGeometry Unable to set geometry问题记录

    问题描述 为了添加美化效果 重写了QMainWindow等窗口的标题栏 通过自定义标题栏窗口实现最大化 最小化 还原 关闭等操作 这些操作涉及到窗口的尺寸变化 在调试过程中出现以下问题 打开一个QMainWindow后 窗口正常显示 最大化
  • connect时使用Qt::DirectConnection,导致多线程时UI线程还是卡顿

    如果槽函数是耗时会导致UI假死的任务 connect时不能使用Qt DirectConnection 该参数The slot is invoked immediately when the signal is emitted The slo
  • ValueError: Input contains NaN, infinity or a value too large for dtype('float32').

    ValueError Input contains NaN infinity or a value too large for dtype float32 64 一般处理方式 对于以上问题其原因一般是数据集中存在nan值 以下假设数据用nu
  • Python+Appium实现控制app

    在这之前需要做好以下几个步骤 1 java开发环境JDK 2 android SDK platform platform tools tools build tools 3 python下载安装 pip 4 appium下载安装 服务端 客
  • js -- constructor构造方法

    let aaa name Lifan age 18 class Polygon constructor aaa this name aaa name const poly1 new Polygon aaa console log poly1
  • Spring IoC容器

    转自 Spring IoC容器 一 Ioc简介 IoC容器是Spring中的核心 我们通常也将其称之为Spring容器 Spring使用IoC容器对对象的实例化和初始化的操作 及管理对象的创建到销毁的生命周期 Spring中使用的对象全部由
  • OSI网络模型(TCP/IP五层模型)

    互联网由一系列的网络协议组成 这些协议的集合叫做OSI协议 按照功能可以划分为七层 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 也就是我们常说的OSI七层模型 每一层使用下层提供的服务 并向上层提供服务 OSI七层模型只是一
  • uni-app store 状态管理学习,多写几遍就会了

    uni app使用了一段时间了 一直没有用到store 状态管理 还是应该学习一下 以后会用到的 1 使用hbuiderx创建uni app项目 2 与static同级创建store文件夹 store文件夹下创建index js 3 关键i
  • sqlserver数据类型转换(将 nvarchar 转换为数据类型 numeric 时出现算术溢出错误)

    一般情况下 sqlserver会自动完成数据转换 但这种转换有时候很容易出错 尤其是nvarchar转换为numeric时 如果能够明确数据类型 最好显式转换 举个我遇到的例子 SELECT FROM ITEM INFO TEST WHER
  • BLE学习(4):蓝牙地址类型和设备的隐私

    蓝牙地址也被称为蓝牙MAC地址 它能唯一标识一个蓝牙设备的48位的值 在蓝牙规范中 它被称为BD ADDR 蓝牙的地址类型可以分为两种 public addresses和random addresses 其中random addresses
  • visual studio2019创建运行第一个C++详细步骤与断点调试的简单认识

    是去官网下的社区版 可以用自己的微软账号登录也不需要网上找破解版了 安装过程还是很顺利的 下面在第一次使用vs2019下创建C 项目 依次helloworld 计算器类 首先明确 在vs中是使用项目来组织代码 使用解决方案来组织项目 所以首
  • adb连接及常用命令

    adb命令连接模拟器设备 以夜神模拟器为例 夜神模拟器默认端口为62001 adb connect 127 0 0 1 62001 当打开了多个模拟器 设备连接失败时 解决方法 查看连接的设备 可以查看连接的adb的设备情况 如果连接多个设
  • 02_计算机网络笔记-网络拓扑-交换机-VLAN

    文章目录 一般家庭的网络拓扑 交换机的基本原理与配置 虚拟局域网VLAN 个人博客 https blog csdn net cPen web 一般家庭的网络拓扑 光猫 调制解调器 1 光信号和电信号的转换 2 路由器的功能 可以拨号 账号和
  • MyBatis 采用注解方式批量更新数据 @Mapper @Update (包含2种方法)

    批量更新数据方法 1 注释db filed name 表示的是的数据库字段名字 entity name 表示的是你的实体字段 table name 表示你的表名 Update
  • ONNXRUNTUIME c++使用(分割网络)与相关资料(暂记)

    下面的教程是在linux系统上运行的 如果想在windows系统上运行 可以看官方链接或中文教程https bbs huaweicloud com blogs 335706 官方链接中有完整的VS的带 sln的项目 ONNXRUNTUIME
  • ES学习笔记之-ClusterState的学习

    前面研究过ES的get api的整体思路 作为编写ES插件时的借鉴 当时的重点在与理解整体流程 主要是shardOperation 的方法内部的调用逻辑 就弱化了shards 方法 实际上shards 方法在理解ES的结构层面 作用更大一些
  • JAVA获取IP地址、电脑Mac地址

    1 获取IP地址 注意 IP地址经过多次反向代理后会有多个IP值 其中第一个IP才是真实IP 所以不能通过 request getRemoteAddr 获取IP地址 如果使用了多级反向代理的话 X Forwarded For的值并不止一个
  • javaWeb项目中分页和模糊查询技术

    分页 需求 登录成功后 展现全部时 出现分页 思路 前端 1 设置分页按钮 以及分页数据 页码 总页数 总条数 2 设置分页请求 即点击上一页 下一页时发请求 后端 3 web xml映射 映射到Servlet能接收请求 4 Dao查询分页