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

前后端分离------后端创建笔记(05)用户列表查询接口(上)

本文章转载于【SpringBoot+Vue】全网最简单但实用的前后端分离项目实战笔记 - 前端_大菜007的博客-CSDN博客

仅用于学习和讨论,如有侵权请联系

源码:https://gitee.com/green_vegetables/x-admin-project.git
素材:https://pan.baidu.com/s/1ZZ8c-kRPUxY6FWzsoOOjtA 提取码:up4c
项目概述笔记:https://blog.csdn.net/m0_37613503/article/details/128961102
数据库笔记:https://blog.csdn.net/m0_37613503/article/details/128961401
前端笔记:https://blog.csdn.net/m0_37613503/article/details/128961447
后端笔记:https://blog.csdn.net/m0_37613503/article/details/128961569

1、因为是分页所以我们需要两个参数:pagesize和pageNum

1.1

2 后端直接干,找到userController,我们查询请求就是getter请求

 2.1

3 登录接口用post不安全

3.1 增删改查,新增post,修改用post,删除delete,这里返回的数据时Map集合

 3.2 我们现在要这两个参数,除了这两个还有pageNum和pageSize,这里用注解直接获取参数

 3.3 如果要求参数不是100%要求输入的,就用required=false

3.4  再添加一个分页参数

3.5 再加一个一页显示多少条的参数

 3.6 你要查询第几页,你得传入第几页,同时还有一个条件构造器

 3.7 我们需要传入一个条件构造器,我们就写入一个条件构造器,把我们条件给拼接进来

 

 3.8 泛型改成user,这样字段就不会写错

4 我们要出入的username

4.1

5、这里可能传入一个用户条件,有可能是一个空值

5.1

6 点击eq方法,他做了重载, condition只要满足这个条件,我就会拼接。

6.1用户名直接为空,我就可以在这里做直接判断

 6.2 判断用户不为空,不为“”的空

 6.3  判断代码长度是否为零

 6.4 上面的变量差不多,因此复制粘贴,我们复制的前提是我们熟悉的代码,而不是我们不熟悉的代码

 6.5 分页,我们需要new一个page对象

 6.6 这个page方法是什么,是IPage的子类

 6.7 你可以看一下IPage,点这个

 6.8 这里的泛型写user

 6.9这里的构造方法是要传入参数的

6.10 这里出问题是导入的是spring中的page,导错了

 6.11 我要的是苞米豆中的page

 6.12 第一个是当前页,其他是每页显示多少条

 6.13 回到控制器中,这就是我们页面传入的参数,pageNo,pageSize

 6.14 传入我们分页和条件

6.15 我们想要的数据时Mapper类型的数据

封装一个数据

 6.16 返回给前端需要一个总积累数,total

 6.17 拿回前端返回的结果集

 6.18 把数据给他返回过去

7、重新部署一下

7.1

8、这里爆出一个错误,刚才的接口写错了,这里我们应写查询

8.1

9、等一会查询的时候,我们用“/List作为查询路径”

 9.1 重启测试一下

 10 用postman测试一下:GET请求,路径为List 

10.1 我想查第一页,每页10条,带两个参数

  

11、total 是我们的总积累数,如果我们想要total必须做一个count查询

 

11.1

12、写了分页的方法没有生效的原因是你必须写一个分页的拦截器配置 

12.1

13 百度搜索MyBatis-Plus,点击分页插件

13.1 你需要配置这个分页拦截器,他才能生效

 

14、他告诉你了,spring怎么配,只要把类写上就行

 

14.1

15、找到config,写一个类

 

 

15.1

16 写一个注解

 

16.1

17 把内容复制过来

17.1

18 导一下类

 

18.1

19 把数据库给改一下

19.1

20 分页拦截器设置成功过

 

20.1

##

21、现在total出来了6

 

21.1

22 用户列表查询对接后端,我们想要对接后端,先找到API文件,这个文件就是对接后端的专用文件

22.1

23 他每个方法对应一个接口

24 一般我们一个功能模块,一个新建点,我给他建一个文件

 

24.1

25 建一个userManage.js文件 

25.1

26 这一行代码保留去引用request

 

26.1

27 导出,export default ,这样我们可以把多个方法,全部写到这里面来

27.1

28 在这里面定义方法:写一个getUserList()查询方法

 

28.1

29 return一个request对象,request就是上面定义的

29.1

30 我们的路径是什么,请求方式是什么

30.1

31、你查询的时候,要把参数写上,get传不了json

 

31.1

32 我想传入的参数,parms中的pageNUM,属性值那,

32.1

33 属性值

 

33.1

34 如果后面我再想写别的方法,我就写,然后写别的方法就行

 

34.1

35最终写成这样就行

 

35.1

36 我们想在这个页面中调用方法,提交给后台 

36.1

37 现在method中写一个查询,做一下用户的查询

 

37.1

38 这个方法名要跟上面的相同,但是不是同一个方法

 

38.1

39、我想使用这个方法,我得先导入他,@代表Src目录后

 

39.1

40.then调完之后的回调方法

 

40.1

41、这里面要传入参数

 

41.1

42 then是回调,我们查询成功之后,要做什么事情,我们要把数据给他塞进来

 

42.1

43 这里我要写一个形参名字,我习惯写response,响应对象,后台返回我的响应数据

43.1 这是我们的数据

44 里面有个data属性,下面有个rows

 

44.1

45 这样我们定义了一个方法做这个查询,但这个方法不调用是不执行的

45.1

46 我们希望页面一进入就默认去查这里的第一页数据

 

46.1

47 我们需要构造函数,在这个构造函数去查默认函数,与,method平级,这个调他,那个调他

 

47.1

48 那个js实际是封装了一个xshell,发给了后台,做了一个异步调用

 

48.1

49 数据已经出来了

49.1

50 因为我们是复制的,属性名就出来了,这里写错了

 

50.1

51、改成email

 

51.1

52 现在点击查询不管用,我们应该怎么办 24-9分09

 

52.1

53 绑定一个查询事件 

53.1

54 查一下admin

54.1

55 这里出现了一个问题,我点击下面的查询按钮,除了6条数据,而本应该是出现5条数据

 

55.1

56 这里数据产生变化的时候,你应该要刷新数据

56.1

57 刷新对应的方法都是空的

 

57.1

58 这个方法,只要pageSize发生改变就能够把pageSize最新的数值给传过来

 

58.1

59 传入之后,我们就可以对他的数值做一下更新

 

59.1

60 数据点完之后,我们再重新查询

 

60.1

61、Current也就是pageNum 

61.1

62 他必须拿到pageNum,拿到之后,我们再做一下更新

 

62.1

63 数据没问题,但是这里的数据时6,序号出现了问题,这里如何解决,这里的序号你得自己计算

63.1

64、我们这里用的是type=index 

相关文章:

前后端分离------后端创建笔记(05)用户列表查询接口(上)

本文章转载于【SpringBootVue】全网最简单但实用的前后端分离项目实战笔记 - 前端_大菜007的博客-CSDN博客 仅用于学习和讨论,如有侵权请联系 源码:https://gitee.com/green_vegetables/x-admin-project.git 素材:https://pan.baidu.com/s/…...

性能测试|App性能测试需要关注的指标

一、Android客户端性能测试常见指标: 1、内存 2、CPU 3、流量 4、电量 5、启动速度 6、滑动速度、界面切换速度 7、与服务器交互的网络速度 二、预期标准指定原则 1、分析竞争对手的产品,所有指标要强于竞品 2、产品经理给出的预期性能指标数据…...

Termux SFTP 进行远程文件传输

文章目录 1. 安装openSSH2. 安装cpolar3. 远程SFTP连接配置4. 远程SFTP访问4. 配置固定远程连接地址 SFTP(SSH File Transfer Protocol)是一种基于SSH(Secure Shell)安全协议的文件传输协议。与FTP协议相比,SFTP使用了…...

Sqlite3简介

SQLite3 简介 SQLite3 是一种轻量级的嵌入式数据库引擎,被广泛应用于各种应用程序中,包括移动设备、桌面应用程序和嵌入式系统。它以其简单、高效和零配置的特点而受到开发者的喜爱。 以下是 SQLite3 的一些重要特点: 嵌入式数据库引擎&…...

K8S调度

K8S调度 一、List-Watch 机制 controller-manager、scheduler、kubelet 通过 List-Watch 机制监听 apiserver 发出的事件,apiserver 通过 List-Watch 机制监听 etcd 发出的事件1.scheduler 的调度策略 预选策略/预算策略:通过调度算法过滤掉不满足条件…...

vue+element多层表单校验prop和rules

核心点:外层循环是item和index,内层循环是item2和index2 如果都是定义的同一个属性名 外层循环得写:prop"block.index.numerical" 同理内层循环就得写:prop"objectSpecs. index2 .numerical" 校验函数方法 :rules"getRules(it…...

Dubbo 核心概念和架构

以上是 Dubbo 的工作原理图,从抽象架构上分为两层:服务治理抽象控制面 和 Dubbo 数据面 。 服务治理控制面。服务治理控制面不是特指如注册中心类的单个具体组件,而是对 Dubbo 治理体系的抽象表达。控制面包含协调服务发现的注册中心、流量管…...

【数据结构OJ题】反转链表

原题链接:https://leetcode.cn/problems/reverse-linked-list/description/ 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 方法一:三指针翻转法 使用三个结构体指针n1,n2,n3,原地修改结点…...

Java8 Stream 之groupingBy 分组讲解

本文主要讲解&#xff1a;Java 8 Stream之Collectors.groupingBy()分组示例 Collectors.groupingBy() 分组之常见用法 功能代码: /** * 使用java8 stream groupingBy操作,按城市分组list */ public void groupingByCity() { Map<String, List<Em…...

优哲SSD大文件写性能测试

SDD磁盘性能测试&#xff1a; 空盘&#xff1a; 大文件读&#xff0c;写&#xff0c;读写&#xff08;4/6&#xff09;性能测试&#xff0c;删除性能测试&#xff0c;N进程&#xff0c;N线程 小文件读&#xff0c;写&#xff0c;读写&#xff08;4/6&#xff09;性能测试&am…...

Python基础教程: json序列化详细用法介绍

前言 嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 Python内置的json模块提供了非常完善的对象到JSON格式的转换。 废话不多说&#xff0c;我们先看看如何把Python对象变成一个JSON&#xff1a; d dict(nameKaven, age17, sexMale) print(json.dumps(d)) # {"na…...

一张图看懂 USDT三种类型地址 Omni、ERC20、TRC20的区别

USDT是当前实用最广泛&#xff0c;市值最高的稳定币&#xff0c;它是中心化的公司Tether发行的。在今年的4月17日之前&#xff0c;市场上存在着2种不同类型的USDT。4月17日又多了一种波场TRC20协议发行的USDT&#xff0c;它们各自有什么区别呢?哪个转账最快到账&#xff1f;哪…...

SegFormer之模型训练

单卡训练&#xff0c;所有配置文件里的【SyncBN】改为【BN】 启动训练 &#xff08;1&#xff09;终端直接运行 python tools/train.py local_configs/segformer/B1/segformer.b1.512x512.ade.160k.py &#xff08;2&#xff09;在编辑器中运行 在 [config] 前面加上’–‘将…...

Azure资源命名和标记决策指南

参考 azure创建虚拟机在虚拟机中选择编辑标签&#xff0c;并添加标记&#xff0c;点击应用 3.到主页中转到所有资源 4. 添加筛选器并应用 5.查看结果&#xff0c;筛选根据给服务器定义的标签筛选出结果。 参考链接: https://learn.microsoft.com/zh-cn/azure/cloud-adoption…...

【在一个升序数组中插入一个数仍升序输出】

在一个升序数组中插入一个数仍升序输出 题目举例&#xff1a; 有一个升序数组nums&#xff0c;给一个数字data&#xff0c;将data插入数组nums中仍旧保证nums升序&#xff0c;返回数组中有效元素个数。 比如&#xff1a;nums[100] {1, 2, 3, 5, 6, 7, 8, 9} size 8 data 4 …...

图像去雨、去雪、去雾论文学习记录

All_in_One_Bad_Weather_Removal_Using_Architectural_Search 这篇论文发表于CVPR2020&#xff0c;提出一种可以应对多种恶劣天气的去噪模型&#xff0c;可以同时进行去雨、去雪、去雾操作。但该部分代码似乎没有开源。 提出的问题&#xff1a; 当下的模型只能针对一种恶劣天气…...

YARN框架和其工作原理流程介绍

目录 一、YARN简介 二、YARN的由来 三、YARN的基本设计思想 四、YARN 的基本架构 4.1 基本架构图 4.2 基本组件介绍 4.2.1 ResourceManager 4.2.1.1 任务调度器(Resource Scheduler) 4.2.1.2 应用程序管理器&#xff08;Applications Manager&#xff09; 4.2.1.3 其他…...

多维时序 | MATLAB实现ZOA-CNN-BiGRU-Attention多变量时间序列预测

多维时序 | MATLAB实现ZOA-CNN-BiGRU-Attention多变量时间序列预测 目录 多维时序 | MATLAB实现ZOA-CNN-BiGRU-Attention多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.Matlab基于ZOA-CNN-BiGRU-Attention斑马优化卷积双向门控循环单元网络…...

centos上下载redis

1.redis 特点 Redis特性&#xff08;8个&#xff09; 1 速度快&#xff1a;10w ops&#xff08;每秒10w读写&#xff09;&#xff0c;数据存在内存中&#xff0c;c语言实现&#xff0c;单线程模型 2 持久化&#xff1a;rdb和aof 3 多种数据结构&#xff1a; 5大数据结构 …...

黑马项目一阶段面试58题 Web14题(二)

八、内连接和外连接查询有什么区别 内连接 获取两表的交集部分 外连接 获取某表的所有数据&#xff0c;以及两表的交集数据 九、事务管理的作用&#xff0c;四大特性 作用 保证多个增删改的操作&#xff0c;要么同时成功&#xff0c;要么同时失败 四大特性 1.原子性 事…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

【位运算】消失的两个数字(hard)

消失的两个数字&#xff08;hard&#xff09; 题⽬描述&#xff1a;解法&#xff08;位运算&#xff09;&#xff1a;Java 算法代码&#xff1a;更简便代码 题⽬链接&#xff1a;⾯试题 17.19. 消失的两个数字 题⽬描述&#xff1a; 给定⼀个数组&#xff0c;包含从 1 到 N 所有…...

[ACTF2020 新生赛]Include 1(php://filter伪协议)

题目 做法 启动靶机&#xff0c;点进去 点进去 查看URL&#xff0c;有 ?fileflag.php说明存在文件包含&#xff0c;原理是php://filter 协议 当它与包含函数结合时&#xff0c;php://filter流会被当作php文件执行。 用php://filter加编码&#xff0c;能让PHP把文件内容…...

毫米波雷达基础理论(3D+4D)

3D、4D毫米波雷达基础知识及厂商选型 PreView : https://mp.weixin.qq.com/s/bQkju4r6med7I3TBGJI_bQ 1. FMCW毫米波雷达基础知识 主要参考博文&#xff1a; 一文入门汽车毫米波雷达基本原理 &#xff1a;https://mp.weixin.qq.com/s/_EN7A5lKcz2Eh8dLnjE19w 毫米波雷达基础…...

基于鸿蒙(HarmonyOS5)的打车小程序

1. 开发环境准备 安装DevEco Studio (鸿蒙官方IDE)配置HarmonyOS SDK申请开发者账号和必要的API密钥 2. 项目结构设计 ├── entry │ ├── src │ │ ├── main │ │ │ ├── ets │ │ │ │ ├── pages │ │ │ │ │ ├── H…...

Python训练营-Day26-函数专题1:函数定义与参数

题目1&#xff1a;计算圆的面积 任务&#xff1a; 编写一个名为 calculate_circle_area 的函数&#xff0c;该函数接收圆的半径 radius 作为参数&#xff0c;并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求&#xff1a;函数接收一个位置参数 radi…...

绕过 Xcode?使用 Appuploader和主流工具实现 iOS 上架自动化

iOS 应用的发布流程一直是开发链路中最“苹果味”的环节&#xff1a;强依赖 Xcode、必须使用 macOS、各种证书和描述文件配置……对很多跨平台开发者来说&#xff0c;这一套流程并不友好。 特别是当你的项目主要在 Windows 或 Linux 下开发&#xff08;例如 Flutter、React Na…...

Spring Boot + MyBatis 集成支付宝支付流程

Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例&#xff08;电脑网站支付&#xff09; 1. 添加依赖 <!…...

【若依】框架项目部署笔记

参考【SpringBoot】【Vue】项目部署_no main manifest attribute, in springboot-0.0.1-sn-CSDN博客 多一个redis安装 准备工作&#xff1a; 压缩包下载&#xff1a;http://download.redis.io/releases 1. 上传压缩包&#xff0c;并进入压缩包所在目录&#xff0c;解压到目标…...

13.10 LangGraph多轮对话系统实战:Ollama私有部署+情感识别优化全解析

LangGraph多轮对话系统实战:Ollama私有部署+情感识别优化全解析 LanguageMentor 对话式训练系统架构与实现 关键词:多轮对话系统设计、场景化提示工程、情感识别优化、LangGraph 状态管理、Ollama 私有化部署 1. 对话训练系统技术架构 采用四层架构实现高扩展性的对话训练…...