SSMP整合案例(16) vue java联合实现分页条件查询 终结篇

news2024/11/17 16:52:56

那么 之后 我们就要处理按条件查询了
简单说 就是我们在分页时 条件也要一起带过去
在这里插入图片描述
其实 我们之前写的App组件中 他们已经被定义上了

我们看到App.vue的这个位置
在这里插入图片描述
我们用了 formData
其中对应了三个条件

然后 我们在 src的App组件下 找到 getPages 中定义data的部分 然后改成

let data = {
  page: this.page.pageCount,
  pageSize: this.page.pageSize,
  type: this.formData.type,
  name: this.formData.name,
  description: this.formData.description
}

在这里插入图片描述
我们先将这三个值当做参数 传给请求

然后 我们再发送请求 就可以看到这些条件参数了 但是 目前我们并没有后端处理这些条件
在这里插入图片描述
然后 我们看到之前我们给查询按钮 绑定的事件叫 queryGet
在这里插入图片描述
我们将 queryGet 改成

queryGet() {
	this.page.pageCount = 1;
	this.getPages();
},

我们因为查询条件改变了 就先将当前页调成1 因为 不一定能查出多少页的数据了
然后 调用我们的查询方法getPages

然后 我们就要在我们java项目改了
打开java项目 在启动类同目录下的 controller 下的BookController类
将getPage函数修改如下

@GetMapping("/page")
public ResultUtil getPage(@RequestParam int page,int pageSize,String type,String name,String description) {
    book book = new book();
    book.setType(type.isEmpty()?-1:Integer.parseInt(type));
    book.setName(name);
    book.setDescription(description);
    IPage<book> BookPage = IBookService.getPage(page, pageSize,book);
    int state = BookPage != null?200:500;
    String message = BookPage != null?"操作成功":"系统异常";
    ResultUtil ResultUtil = new ResultUtil(state,BookPage,message);
    return ResultUtil;
}

简单说 我们新接受了 三个参数 就是我们刚刚新加的type name description
这里 type要给字符串 因为 我们前端处理时 默认值是个空字符串 如果你直接int去接 肯定是有问题的
然后 我们到后面起判断 type.isEmpty() 判断 type是不是一个空字符串
如果是 给 -1 如果不是 将字符串转为数字 用这三个值 再创建一个 book属性类对象

但是 我们这里改了 那么 我们service层显然也要改
在同目录下找到 service 下的IBookService
将其中getPage改成

IPage<book> getPage(int page,int pageSize,book book);

其中 就是我们刚才改的 传的这个 book对象
然后 我们接口都改了 实现类自然也要改
将 service 下的 impl下的bookServiceI类 中的 getPage 函数代码更改如下

@Override
public IPage<book> getPage(int page, int pageSize,book bookData) {
    LambdaQueryWrapper<book> Query = new LambdaQueryWrapper<book>();
    Query.eq(bookData.getType() != -1,book::getType,bookData.getType());
    Query.like(!bookData.getName().isEmpty(),book::getName,bookData.getName());
    Query.like(!bookData.getDescription().isEmpty(),book::getDescription,bookData.getDescription());
    IPage<book> pageDate = new Page(page,pageSize);
    bookDao.selectPage(pageDate,Query);
    return pageDate;
}

我们这里 还是利用LambdaQueryWrapper做条件查询
这里 基础好的不用解释 基础不好 说也说不清楚

然后 我们运行界面 数据展示是这样
在这里插入图片描述
我们将 type改成 1 查询 数据就出来了
在这里插入图片描述
我们将 type条件还原 然后 name这里 改成 猫
查询 他就匹配出了对应数据
在这里插入图片描述
然后 我们还原其他条件 将描述 改成 管理
也过滤出了对应数据
在这里插入图片描述
好啦 那么我这个按理就跑起来了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/737486.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

idea显示左下角service

展示效果&#xff1a; 解决方案&#xff1a; 1.点击左下角 这个按钮 2.点击蓝色英文&#xff0c;add services 3.找到众多模板中的springboot&#xff0c;点击即可

【C++】手把手教你模拟实现vector

vector模拟实现 前言正式开始三个成员变量无参构造析构push_back[ ]重载pop_backinserterase迭代器失效问题insert迭代器失效erase迭代器失效 深浅拷贝拷贝构造函数赋值运算符重载 n个val构造resizefront和backfrontback 前言 这篇写的是vector的模拟实现。 如果对于vector不…

TI系列——CC2340B1 Uniflash烧录指南

一、物料准备 1.1 硬件准备 1、XDS110-PLUS2.0或者TI LaunchPad&#xff1a; 图 1 XDS110-PLUS2.0中包含&#xff1a; XDS110调试器、USB-A to Type-C-B电缆、具有2x5 2.54mm连接器的10引脚扁平电缆、具有2x5 1.27mm连接器的10引脚扁平电缆、具体请看说明指南文档。 图 2 上…

【MyBatis-Plus】DML编程控制 代码生成器(文末赠书)

1&#xff0c;DML编程控制 查询相关的操作我们已经介绍完了&#xff0c;紧接着我们需要对另外三个&#xff0c;增删改进行内容的讲解。挨个来说明下&#xff0c;首先是新增(insert)中的内容。 1. id生成策略控制 前面我们在新增的时候留了一个问题&#xff0c;就是新增成功后…

ArcGIS问题解决——CAD中的字体加载到ArcMap显示乱码

ArcGIS问题解决——CAD中的字体加载到ArcMap显示乱码 CAD中的字体加载到ArcMap显示乱码&#xff0c;是因为字符集的问题&#xff0c;解决办法即修改注册表中默认字符集为简体中文字符集即可。 ①winR,输入regedit&#xff0c;回车 ②找到计算机\HKEY_CURRENT_USER\SOFTWARE\…

网络变压器的工作原理

网络变压器又称“数据汞”&#xff0c;或网络绝缘变压器。在网络接口中起到两个主要作用&#xff1a; 一是通过将差模耦合和线圈耦合相结合的过滤器&#xff0c;增强PHY传输的差分信号的数据传输&#xff0c;并将电磁场转换为不同电平连接线的另一端&#xff1b; 二是隔离线连…

有人相爱,有人夜里开车看海,有人leetcode第一题都做不出来​​

LEETCODE 1. 两数之和 题解地址 https://leetcode.cn/problems/two-sum/solution/liang-shu-zhi-he-by-leetcode-solution/ 有人相爱&#xff0c;有人夜里开车看海&#xff0c;有人leetcode第一题都做不出来。 题目 给定一个整数数组 nums 和一个整数目标值 target&#xff0…

【运维】Linux的文件权限,文件所属组别,用户组访问文件的权限设置,将用户加入某个组,创建用户组

文章目录 文件权限添加一个组将用户加入组将文件设置为组访问更改所属用户查看Linux系统中用户所属的组 文件权限 添加一个组 添加一个组&#xff1a; 使用groupadd命令可以添加一个新的组。例如&#xff0c;要添加一个名为 “mygroup” 的组&#xff0c;可以运行以下命令&…

每日汇评:21日均线是黄金突破最大障碍,看涨形态逐步形成

1、美元在非农数据惨淡后持续上涨&#xff0c;金价维持上周涨幅&#xff1b; 2、美债收益率的反弹也抑制了金价的上涨空间&#xff1b; 3、金价在周五确认了一个看涨楔形&#xff0c;但重夺21日移动均线是关键&#xff1b; 黄金在本周初触及的1930美元关口下方徘徊&#xff0…

SciencePub学术 | 计算机决策类重点SCIEEI征稿中

SciencePub学术 刊源推荐: 计算机决策类重点SCIE&EI征稿中&#xff01;信息如下&#xff0c;录满为止&#xff1a; 一、期刊概况&#xff1a; 计算机决策类重点-01 【期刊简介】IF&#xff1a;4.0-4.5&#xff0c;JCR2区&#xff0c;中科院3区&#xff1b; 【出版社】世…

基于ChatGPT的企业微信机器人

1、openAI账号 登录OpenAI的账号后&#xff0c;再点击右上角的“Personal”图标&#xff0c;然后点击“view API keys”进入API页面。 点击“create new secret key”按钮。 生成秘钥之后&#xff0c;把秘钥复制下来。 2、拉取项目代码 git clone https://github.com/zhay…

安全与便利并行:智慧电梯的魅力与优势

数字孪生技术正在逐渐改变着我们的生活方式&#xff0c;其中之一就是在智慧电梯领域的应用。那么&#xff0c;数字孪生技术是怎样运用到电梯上的呢&#xff1f;这又会对我们的生活造成怎样的改变&#xff1f; 在智慧电梯中&#xff0c;数字孪生技术将电梯的物理实体与虚拟模型…

3. Springboot快速回顾(拦截器的使用)

本文将提供一个案例&#xff0c;回顾如何在springboot中使用拦截器。 首先明白为何使用拦截器&#xff0c;拦截的是什么&#xff1f; 比如你设计了一个网站&#xff0c;为这个网站设计了一个登陆界面后&#xff0c;希望在登录界面进行身份验证&#xff0c;进入系统。但我可以直…

flutter开发实战-多语言flutter intl

flutter开发实战-多语言flutter intl 之前做的应用中有用到多语言&#xff0c;一直没有整理&#xff0c;这里整理一下多语言设置流程。 使用的是Android studio 一、flutter_intl 插件 使用Android studio安装flutter_intl 插件&#xff0c;更新或者安装flutter_intl 插件后…

国产4 通道模拟复合视频解码芯片MIPI CSI 接口,XS9922B

XS9922B 是一款 4 通道模拟复合视频解码芯片&#xff0c;支持 HDCCTV 高清协议和 CVBS 标 清协议&#xff0c;视频制式支持 720P/1080P 高清制式和 960H/D1 标清制式。芯片将接收到的高清 模拟复合视频信号经过模数转化&#xff0c;视频解码以及 2D 图像处理之后…

Django_模板标签语法

目录 引用变量 for循环标签 if条件标签 with标签 注释 extends和block标签 csrf_token标签 load static标签 源码等资料获取方法 引用变量 可以使用{{}}引用视图函数响应的变量和模板中的变量。 比如有如下视图函数 在模板中引用变量方式如下 界面展示如下 for循环标…

微信小程序——真机调试步骤

工具/原料 手机 微信开发者工具 以下是微信开发者工具注册和安装教程&#xff1a; 微信开发者工具_小彭不会秃头的博客-CSDN博客 开始真机调试 前提&#xff1a;手机和电脑连同一个网络&#xff0c;电脑连手机热点没用 把网络ip添加到请求路径中&#xff08;HBuilder X软件 小…

docker部署rabbitmq 后访问管理首页常见问题

1.项目启动后 管理首页无法访问 1&#xff09;检查15672端口是否可以访问 2&#xff09;docker exec -it your_container_name /bin/bash 进入docker容器执行如下命令&#xff1a; 3) rabbitmq-plugins enable rabbitmq_management 2.访问首页时提示不是私密连接&#xff1a;…

单细胞生物实验教学三维vr仿真模拟实操平台增强学生的从业自信心

VR元宇宙近几年在各个领域得到了广泛的应用&#xff0c;特别是教育领域&#xff0c;干细胞是具有自我更新能力和分化为多种细胞类型的能力的一类细胞&#xff0c;具有极高的医学研究价值和应用前景。干细胞冻存技术是一种保护干细胞的重要方法&#xff0c;也是干细胞应用的前提…

微信小程序做登录密码显示隐藏效果 并解决安卓手机端隐藏密码时小黑点显示过大问题

在编辑器和苹果手机上面显示就是正常的大小&#xff0c;在安卓手机上面黑点就非常大&#xff0c;需要单独调 安卓手机显示比较大 wxml 注意&#xff1a;在html中的input是通过切换type的属性值来实现隐藏显示的 在微信小程序的input里面type没有password属性 是通过password属…