前后端分离------后端创建笔记(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 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

City Walk带动茶饮品牌售1200万,媒介盒子带你探究奥秘

年轻人生活趋势又出现了一个新鲜词——City Walk,简单来说,City Walk就是没有目的地,没有目标,只是出行,填充自己的生活。 其实这个词源于gap year,而这个说法一直是国外的一些毕业生,大多会在…

plt取消坐标轴刻度、自定义取消绘图边框(或坐标轴)、白边处理、自定义颜色图谱、设置坐标轴刻度朝向

目录 1、取消坐标轴刻度 2、自定义取消绘图边框(或坐标轴) 3、去掉图片周边白边 4、自定义颜色图谱 5、设置坐标轴刻度朝向 import matplotlib.pyplot as plt 1、取消坐标轴刻度 ax plt.subplot() ax.set_xticks([]) ax.set_yticks([]) 2、自定…

自定义 视频/音频 进度条

复制代码根据自己需求改动就可以了 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><metaname"viewport"conten…

模仿火星科技 基于cesium+水平面积测量+可编辑

​ 当您进入Cesium的编辑水平积测量世界&#xff0c;下面是一个详细的操作过程&#xff0c;帮助您顺利使用这些功能&#xff1a; 1. 创建提示窗&#xff1a; 启动Cesium应用&#xff0c;地图场景将打开&#xff0c;欢迎您进入编辑模式。 在屏幕的一角&#xff0c;一个友好的提…

计算机网络:网络通信相关概念入门

目录 一、网络发展背景二、理解网络通信三、理解IP地址1.简述IP地址2.IP地址的版本3.提高地址利用率的技术 四、理解端口1.简述端口2.使用端口的原因 五、理解网络通信协议 一、网络发展背景 网络发展背景&#xff1a; 最初的计算机是单机&#xff0c;那么单机是这样传输数据的…

【金融量化】Python实现根据收益率计算累计收益率并可视化

1 理论 理财产品&#xff08;本金100元&#xff09; 第1天&#xff1a;3% &#xff1a;&#xff08;13%&#xff09; ✖ 100 103 第2天&#xff1a;2% &#xff1a;&#xff08;12%&#xff09;✖ 以上 103 2.06 第3天&#xff1a;5% : &#xff08;15%&#xff09;✖ 以上…

企业直播MR虚拟直播(MR混合现实直播技术)视频介绍

到底什么是企业直播MR虚拟直播&#xff08;MR混合现实直播技术&#xff09;&#xff1f; 企业直播MR虚拟直播新玩法&#xff08;MR混合现实直播技术&#xff09; 我的文章推荐&#xff1a; [视频图文] 线上研讨会是什么&#xff0c;企业对内对外培训可以用线上研讨会吗&#x…

2023年新学期12306高铁火车学生票如何在线核验享受优惠?

2023学年优惠资质核验已开始&#xff0c;完成学生优惠资质核验后&#xff0c;您可以在线购买2022年10月1日至2023年9月30日的学生优惠票。&#xff08;注&#xff1a;非该时间段需要重新核验&#xff0c;可享受学生优惠票&#xff09;&#xff1b; 『扩展阅读』 1、美团外卖红…

QT:UI控件(按设计师界面导航界面排序)

基础部分 创建新项目&#xff1a;QWidget&#xff0c;QMainWindow&#xff0c;QDialog QMainWindow继承自QWidget&#xff0c;多了菜单栏; QDialog继承自QWidget&#xff0c;多了对话框 QMainWindow 菜单栏和工具栏&#xff1a; Bar: 菜单栏&#xff1a;QMenuBar&#xff0…

【Sklearn】基于随机森林算法的数据分类预测(Excel可直接替换数据)

【Sklearn】基于随机森林算法的数据分类预测&#xff08;Excel可直接替换数据&#xff09; 1.模型原理1.1 模型原理1.2 数学模型 2.模型参数3.文件结构4.Excel数据5.下载地址6.完整代码7.运行结果 1.模型原理 随机森林&#xff08;Random Forest&#xff09;是一种集成学习方法…

【深度学习】PyTorch快速入门

【深度学习】学习PyTorch基础 介绍PyTorch 深度学习框架是一种软件工具&#xff0c;旨在简化和加速构建、训练和部署深度学习模型的过程。深度学习框架提供了一系列的函数、类和工具&#xff0c;用于定义、优化和执行各种深度神经网络模型。这些框架帮助研究人员和开发人员专注…

RabbitMQ 安装教程

RabbitMQ 安装教程 特殊说明 因为RabbitMQ基于Erlang开发&#xff0c;所以安装时需要先安装Erlang RabbitMQ和Erlang版本对应关系 查看地址&#xff1a;www.rabbitmq.com/which-erlan… 环境选择 Erlang: 23.3及以上 RabbitMQ: 3.10.1Windows 安装 1. 安装Erlang 下载地…

Spark 学习记录

基础 SparkContext是什么&#xff1f;有什么作用&#xff1f; https://blog.csdn.net/Shockang/article/details/118344357 SparkContext 是什么&#xff1f; SparkContext 是通往 Spark 集群的唯一入口&#xff0c;可以用来在 Spark 集群中创建 RDDs 、累加和广播变量( Br…

【css】渐变

渐变是设置一种颜色或者多种颜色之间的过度变化。 两种渐变类型&#xff1a; 线性渐变&#xff08;向下/向上/向左/向右/对角线&#xff09; 径向渐变&#xff08;由其中心定义&#xff09; 1、线性渐变 语法&#xff1a;background-image: linear-gradient(direction, co…

黑客必备的操作系统——kali linux安装

大家经常会在电视里面看到各种炫酷的黑客操作&#xff0c;那么黑客一般用什么操作系统呢&#xff1f;今天小训带大家来安装黑客必备的kali linux-2022操作系统&#xff0c;有兴趣的一起来学习下吧&#xff01; 1、安装前准备 1.1 VMware下载 VMware官网下载&#xff1a; ht…

开源力量再现,国产操作系统商业化的全新探索

文章目录 1. 开源运动的兴起2. 开源力量的推动3. 国产操作系统的崭露头角3.1 国产操作系统有哪些 4.国产操作系统的商业化探索5.开源力量对国产操作系统商业化的推动 操作系统作为连接硬件、中间件、数据库、应用软件的纽带&#xff0c;被认为是软件技术体系中最核心的基础软件…

linux4.0新增32位ARM的系统调用

修改内核源码 Linux系统为每一个系统调用赋予一个系统调用号。当应用程序执行一个系统调用时&#xff0c;应用程序就可以知道执行和调用到哪个系统调用了&#xff0c;从而不会造成混乱。系统调用号一旦分配之后就不会有任何变更&#xff0c;否则已经编译好的应用程序就不能运行…

runtime error: member access within misaligned address(力扣最常见错误之一)

runtime error: member access within misaligned address&#xff08;力扣最常见错误之一&#xff09; 前言原因和解决办法总结 前言 最近博主在刷力扣时&#xff0c;明明代码逻辑都没问题&#xff0c;但总是报下面这个错误&#xff1a; runtime error: member access within…

SQL-每日一题【1251. 平均售价】

题目 Table: Prices Table: UnitsSold 编写SQL查询以查找每种产品的平均售价。average_price 应该四舍五入到小数点后两位。 查询结果格式如下例所示&#xff1a; 解题思路 1.题目要求查询每种产品的平均售价。给出了两个表&#xff0c;我们用聚合查询来解决此问题。 2.首先我…
最新文章