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

news2024/11/26 10:24:48

本文章转载于【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.coloradmin.cn/o/877902.html

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

相关文章

推荐5款能帮你解决各种问题的神器

​ 今天我要向大家推荐5款超级好用的效率软件,无论是在学习还是办公中都能够极大地提高效率。这些软件可以帮助你解决许多问题,而且每个都是真正的神器。 网速和硬件监控——TrafficMonitor ​ TrafficMonitor 是一款可以在任务栏或桌面悬浮窗显示系统…

配置service管理nginx

一.以源码形式安装的nginx,没有nginx.service 二.切换到service配置目录 三.编辑nginx.service文件 四.启动测试 1.我的开始报了这个问题,说没有这个/var/cache/nginx/client_temp目录,直接创建一个就好了 2.开启/关闭 一.以源码形式安装…

参加NPCon2023 AI模型技术与应用峰会(北京站):作为北京社区主理人的参会感受

参加NPCon2023 AI模型技术与应用峰会:作为北京社区主理人的参会感受 🏉🏉前言🏉🏉活动周边琳琅满目🏉🏉主题演讲🏉🏉亮点🏉🏉总结与展望 博主 默语…

项目管理的艺术:掌握成本效益分析

引言 在项目管理中,我们经常面临着如何有效地使用有限的资源来实现项目目标的挑战。为了解决这个问题,我们需要使用一种强大的工具——成本效益分析。通过成本效益分析,我们可以评估和比较不同的项目选项,选择最具成本效益的项目…

备战2024秋招面试题-最左匹配原则、索引失效情况、算法(最长回文子串)

前言: \textcolor{Green}{前言:} 前言: 💞快秋招了,那么这个专栏就专门来记录一下,同时呢整理一下常见面试题 💞部分题目来自自己的面试题,部分题目来自网络整理 给我冲 学习目标&am…

Python爬虫——scrapy_基本使用

安装scrapy pip install scrapy创建scrapy项目,需要在终端里创建 注意:项目的名字开头不能是数字,也不能包含中文 scrapy startproject 项目名称 示例: scrapy startproject scra_baidu_36创建好后的文件 3. 创建爬虫文件&…

【构造】CF1761 E

Problem - 1761E - Codeforces 题意&#xff1a; 思路&#xff1a; Code&#xff1a; #include <bits/stdc.h>using i64 long long;void solve() {int n;std::cin >> n;std::vector g(n, std::vector<int>(n));std::vector<int> deg(n);for (int i …

电脑xinput1_3.dll丢失的解决方法?哪个解决方法更简单

最近在打开软件或者游戏的时候&#xff0c;电脑提示xinput1_3.dll文件丢失的错误。这个问题导致我无法运行某些游戏和应用程序。通过一番尝试和研究&#xff0c;我找到了一些修复xinput1_3.dll文件丢失的方法&#xff0c;并在此分享给大家。 首先&#xff0c;我了解到xinput1_3…

让音频翻译软件成为你的翻译利器吧

音频翻译功能是现代技术的一大进步&#xff0c;它通过语音识别技术和机器翻译技术&#xff0c;可以将音频文件自动翻译成其他语言的文字&#xff0c;让人们跨越语言障碍进行交流。现在市面上有很多种音频文件翻译软件&#xff0c;每个软件都有其独特的功能和特点。那么&#xf…

【状态模式】拯救if-else堆出来的屎山代码

前言 我想大家平时都在开发重都遇见过屎山代码&#xff0c;这些屎山代码一般都是由于复杂且庞大的if-else造成的&#xff0c;状态模式&#xff0c;是一种很好的优化屎山代码的设计模式&#xff0c;本文将采用两个业务场景的示例来讲解如何使用状态模式拯救屎山代码。 目录 前…

什么是管理的本质?

管理不是一门硬科学。与&#xff08;通常&#xff09;存在正确答案的化学或代数不同&#xff0c;管理是流动的&#xff0c;主观的&#xff0c;并且对于如何运用其原理存在不同的观点。但究竟什么是管理&#xff1f;大多数学者都有相同定义的变体&#xff0c;包括利用资源来实现…

Ubuntu系统搭建socks5代理 Danted SOCKS Proxy

本教程介绍如何在Ubuntu系统中搭建Dated Socks5 代理服务器 更新系统 apt update安装 danted软件 apt install dante-server修改该danted软件的配置文件 vi /etc/danted.conf修改后的内容为下&#xff1a; logoutput: syslog user.privileged: root user.unprivileged: no…

沁恒ch32V208处理器开发(五)复用与重映射

目录 概述实现方法GPIO 及其复用功能AFIO 的寄存器实现 重映射的功能限制 概述 在ch32V2xx系列处理器中&#xff0c;芯片引脚数从28到68不等&#xff0c;分为几个系列&#xff0c;不同型号之间外设资源有差异&#xff0c;所以&#xff0c;引脚复用和重映射功能 也不一样&#…

jmeter获取mysql数据

JDBC Connection Configuration Database URL: jdbc:mysql:// 数据库地址 /库名 JDBC Driver class&#xff1a;com.mysql.jdbc.Driver Username&#xff1a;账号 Password&#xff1a;密码 JDBC Request 字段含义 字段含义 Variable Name Bound to Pool 数据库连接池配置…

分类预测 | MATLAB实现GWO-BiGRU-Attention多输入分类预测

分类预测 | MATLAB实现GWO-BiGRU-Attention多输入分类预测 目录 分类预测 | MATLAB实现GWO-BiGRU-Attention多输入分类预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.GWO-BiGRU-Attention 数据分类预测程序 2.代码说明&#xff1a;基于灰狼优化算法&#xff08;GW…

这四种订货系统不能选(二):不能独立部署

订货系统在传统批发贸易企业数字化转型中扮演着重要的角色。然而&#xff0c;有一种类型的订货系统并不适合选择&#xff0c;那就是无法独立部署的系统。 无法独立部署的订货系统意味着数据必须存放在软件厂商的服务器上。当我们选择这样的系统时&#xff0c;需要确保系统具备强…

C++11并发与多线程笔记 (1)

C11并发与多线程笔记&#xff08;1&#xff09; 1、并发、进程、线程的基本概念和综述1.1 并发1.2 可执行程序1.3 进程1.4 线程1.5 学习心得 2、并发的实现方法2.1 多进程并发2.2 多线程并发 3、C11新标准线程库 1、并发、进程、线程的基本概念和综述 1.1 并发 指在一个时间段…

Kotlin入门:面向对象编程——04

一、类和对象&#xff1a; 在Kotlin中&#xff0c;使用class关键字定义类&#xff0c;使用object关键字定义对象。类是对象的蓝图&#xff0c;用于描述对象的属性和行为&#xff0c;而对象则是类的一个实例。类可以包含属性&#xff08;成员变量&#xff09;和方法&#xff08…

SpringBoot复习:(47)ConfigFileApplicationListener

它监听ApplicationEnvironmentPreparedEvent和ApplicationPreparedEvent。 它会把配置文件中配置的内容注入到环境中去&#xff0c;配置文件也就生效了

Photoshop快捷键大全

Photoshop是一款非常强大的图像处理软件&#xff0c;它提供了许多快捷键&#xff0c;可以帮助用户更快地完成操作。熟练掌握这些快捷键&#xff0c;可以大大提高工作效率&#xff0c;让您更加专注于创作。 Photoshop快捷键汇总&#xff1a; 一、基本操作快捷键 1. 新建文档…