【SpringBoot + Vue 尚庭公寓实战】标签和配套管理接口实现接口实现(六)
【SpringBoot + Vue 尚庭公寓实战】标签和配套管理接口实现接口实现(六)
文章目录
- 【SpringBoot + Vue 尚庭公寓实战】标签和配套管理接口实现接口实现(六)
- 1、保存或更新标签信息
- 2、根据id删除标签信息
- 3、根据类型查询配套列表
- 4、新增或修改配套信息
- 5、根据id删除配套信息
1、保存或更新标签信息
查看接口
访问http://localhost:8080/doc.html
点击标签管理查看接口
点击新增或修改标签信息


进行开发
在LabelController中增加如下内容
@Operation(summary = "保存或更新标签信息")
@PostMapping("saveOrUpdate")
public Result saveOrUpdateFacility(@RequestBody LabelInfo labelInfo) {service.saveOrUpdate(labelInfo);return Result.ok();
}
解释
@Operation: 这是用于Swagger UI生成接口文档的注解,它提供了此API操作的简要描述。
@PostMapping: 将此方法映射到POST请求的"/saveOrUpdate"路径,用于处理来自客户端的POST请求。
Result: 此方法的返回类型,使用泛型封装API的返回结果。Result.ok()用于生成一个标准的成功响应。
@RequestBody: 指明此参数应从请求的正文(Body)中获取,并自动由Spring框架的HTTP消息转换器将JSON数据映射到LabelInfo对象。
service.saveOrUpdate(labelInfo): 这一行调用了业务层的saveOrUpdate方法,这个方法通常检查传入的labelInfo对象是否包含id。如果包含id,则为更新操作;如果不包含,认为是新的记录,执行插入操作。
Result.ok(): 这通常是一个静态方法,用来创建一个表示操作成功的响应对象。在这个场景中,它没有返回具体的数据,只是一个成功的状态,告诉客户端操作已成功完成。
2、根据id删除标签信息
查看接口
访问http://localhost:8080/doc.html
点击标签管理查看接口
点击根据id删除标签信息

进行开发
在LabelController中增加如下内容
@Operation(summary = "根据id删除标签信息")@DeleteMapping("deleteById")public Result deleteLabelById(@RequestParam Long id) {labelInfoService.removeById(id);return Result.ok();}
解释
@Operation: 这个Swagger注解用于生成API文档,描述了这个API端点的主要功能,即根据ID删除标签信息。
@DeleteMapping(“deleteById”): 此注解将方法映射到对应的HTTP
DELETE请求上,路径为"/deleteById"。DELETE请求通常用于表示删除资源的操作。
public Result deleteLabelById(@RequestParam Long id):
这是方法的签名,返回一个Result类型的对象,这是一个自定义响应类,通常用于API的标准化输出。@RequestParam注解用于从请求的URL查询参数中接收名为id的参数,此处没有设置required为false,因此它是必需的。
labelInfoService.removeById(id):
在此行,labelInfoService的removeById方法被调用,传入的参数是id。这个方法负责在数据存储层(如数据库)中删除指定ID的记录。
return Result.ok():
方法返回一个Result.ok()调用的结果,这通常是一个工厂方法,用来创建一个成功的响应对象,表明删除操作已成功执行,没有返回数据,只是一个操作成功的确认。
3、根据类型查询配套列表
查看接口
访问http://localhost:8080/doc.html
点击配套管理
点击[根据类型]查询配套信息列表

进行开发
在FacilityController中增加如下内容
@Tag(name = "标签管理")
@RestController
@RequestMapping("/admin/label")
public class LabelController {@Autowiredprivate LabelInfoService labelInfoService;@Operation(summary = "(根据类型)查询标签列表")@GetMapping("list")public Result<List<LabelInfo>> labelList(@RequestParam(required = false) ItemType type) {LambdaQueryWrapper<LabelInfo> labelInfoLambdaQueryWrapper = new LambdaQueryWrapper<>();labelInfoLambdaQueryWrapper.eq(type!=null,LabelInfo::getType,type);List<LabelInfo> list = labelInfoService.list(labelInfoLambdaQueryWrapper);return Result.ok(list);}
}
解释
@Operation: 这是用于为Swagger UI生成接口文档的描述信息。
@GetMapping: 将此方法映射到GET请求的"/list"路径,用于处理来自客户端的GET请求。
Result<List>: 指定方法的返回类型,这里使用泛型包装了标签信息的列表,并使用自定义的Result类型标准化响应结构。
@RequestParam: 允许通过请求的查询参数(URL中的参数)传递信息到方法中。required = false表示这个参数不是必须的,请求中可以不包含它。
LambdaQueryWrapper: MyBatis Plus提供的一个工具类,用于构建SQL语句的条件部分。
labelInfoLambdaQueryWrapper.eq(…): 添加一个条件到查询中。这里使用Java 8的方法引用来指定字段名,保证了类型安全。
labelInfoService.list(…): 调用业务逻辑层的方法,执行数据库查询操作,并获取结果。
Result.ok(list): 创建一个表示操作成功的结果,包含查询到的数据,这通常用于统一API的响应结构。
4、新增或修改配套信息
查看接口
访问http://localhost:8080/doc.html
点击配套管理
点击新增或修改配套信息


进行开发
在FacilityController中增加如下内容
@Tag(name = "标签管理")
@RestController
@RequestMapping("/admin/label")
public class LabelController {@Autowiredprivate LabelInfoService labelInfoService;@Operation(summary = "新增或修改标签信息")@PostMapping("saveOrUpdate")public Result saveOrUpdateLabel(@RequestBody LabelInfo labelInfo) {labelInfoService.saveOrUpdate(labelInfo);return Result.ok();}}
5、根据id删除配套信息
查看接口
访问http://localhost:8080/doc.html
点击配套管理
点击根据id删除配套信息

进行开发
在FacilityController中增加如下内容
@Tag(name = "标签管理")
@RestController
@RequestMapping("/admin/label")
public class LabelController {@Autowiredprivate LabelInfoService labelInfoService;@Operation(summary = "根据id删除标签信息")@DeleteMapping("deleteById")public Result deleteLabelById(@RequestParam Long id) {labelInfoService.removeById(id);return Result.ok();}
}
相关文章:
【SpringBoot + Vue 尚庭公寓实战】标签和配套管理接口实现接口实现(六)
【SpringBoot Vue 尚庭公寓实战】标签和配套管理接口实现接口实现(六) 文章目录 【SpringBoot Vue 尚庭公寓实战】标签和配套管理接口实现接口实现(六)1、保存或更新标签信息2、根据id删除标签信息3、根据类型查询配套列表4、新…...
Web前端中横线:深入探索与实际应用
Web前端中横线:深入探索与实际应用 在Web前端开发的广袤领域中,中横线这一看似简单的元素,实则蕴含着丰富的设计哲学和技术实现。本文将从四个方面、五个方面、六个方面和七个方面,对中横线在Web前端中的应用进行深入剖析&#x…...
鸿蒙 游戏来了 鸿蒙版 五子棋来了 我不允许你不会
团队介绍 作者:徐庆 团队:坚果派 公众号:“大前端之旅” 润开鸿生态技术专家,华为HDE,CSDN博客专家,CSDN超级个体,CSDN特邀嘉宾,InfoQ签约作者,OpenHarmony布道师,电子发烧友专家博客,51CTO博客专家,擅长HarmonyOS/OpenHarmony应用开发、熟悉服务卡片开发。欢迎合…...
国产MCU芯片(2):东软MCU概览及触控MCU
前言: 国产芯片替代的一个主战场之一就是mcu,可以说很多国内芯片设计公司都打算或者已经在设计甚至有了一款或多款的量产产品了,这也是国际大背景决定的。过去的家电市场、过去的汽车电子市场,的确国产芯片的身影不是很常见,如今不同了,很多fabless投身这个行业,一种是…...
气膜馆的保温措施—轻空间
气膜馆是一种新型的建筑形式,广泛应用于体育场馆、仓储、展览等多个领域。其主要特点是通过气体压力支撑膜结构,实现大跨度无柱空间。为了保证气膜馆在不同气候条件下的使用舒适性和能源效率,保温措施至关重要。以下是气膜馆常见的保温措施及…...
UniVue更新日志:使用Carousel组件实现轮播图效果
github仓库 稳定版本仓库:https://github.com/Avalon712/UniVue 开发版本仓库:https://github.com/Avalon712/UniVue-Develop UniVue扩展框架-UniVue源生成器仓库:https://github.com/Avalon712/UniVue-SourceGenerator 更新说明 今天的更…...
docker和docker compose 部署
一. 将微服务运行在docker上: 1.新建一个空文件夹docker-demo,在里面再新建文件夹app,在app目录下新建一个名为Dockerfile的文件。 2.编写Dockerfile文件 3.构建镜像 4.启动镜像 5.可以访问了。 二使用Dockerfile构建微服务镜像 1.将j…...
鸿蒙轻内核A核源码分析系列六 MMU协处理器(2)
3、MMU汇编代码 在arch\arm\arm\include\arm.h文件中,封装了CP15协处理器相关的寄存器操作汇编函数。我们主要看下MMU相关的部分。 3.1 CP15 C2 TTBR转换表基地址寄存器 代码比较简单,结合下图,自行查看即可。该图来自《ARM Cortex-A9 Tec…...
C# 集合(一) —— Array类
总目录 C# 语法总目录 集合一 Array 集合1. Array 类1.1 搜索1.2 排序1.3 翻转1.4 转换 集合 1. Array 类 //创建方式 //方式一 Array arr Array.CreateInstance(typeof(string), 3); arr.SetValue("lisi", 0); arr.SetValue("zhangsan", 1); arr.SetVa…...
World Map Globe Edition 2
只需点击几下,World Political Map - Globe Edition 2就会在场景添加一个美丽且交互式的3D世界地图。将地球预制件拖动到场景中并自定义外观。 完整的资产,具有强大的可视化功能、示例和丰富的API,适用于构建VR、桌面和移动游戏和应用程序。 主要功能: - 在不访问互联网的情…...
人类重启计划---19500630
一、引言 随着人类社会的发展,我们面临着诸多全球性挑战,如气候变化、资源匮乏、疾病爆发等。为了应对这些挑战,确保人类的生存和发展,我们提出人类重启计划。该计划旨在建立一个可持续、安全和繁荣的新世界。 二、目标 建立可持续发展的社会经济模式,确保资源的有效利用…...
苹果WWDC 2024 带来的 AI 风暴:从生产力工具到个人助理,AI 将如何融入我们的生活?
2024年6月5日,苹果WWDC 2024全球开发者大会如约而至,带来了众多令人兴奋的新功能和新产品。其中,AI 技术的全面融入无疑是最引人注目的亮点。从 iOS、iPadOS 到 macOS,再到 Siri 和开发者工具,苹果正在将 AI 融入到其生…...
SE语法总结博文(附思维导图)
Java中的规范 注释 //单行注释 /*多行注释 */ /**文档注释 */命名规范 命名时可以包含:字母、数字以及 下划线和 $ 符号等等。 但是不能以数字开头,也不能是关键字,且严格区分大小写。 类名:每个单词的首字母大写(大驼峰)&…...
STM32面试题
STM32面试题通常涉及STM32微控制器的特性、功能、应用以及编程知识。以下是一些可能的面试问题: STM32微控制器的基本介绍: STM32微控制器是由哪家公司生产的?STM32微控制器主要应用于哪些领域?STM32的特性和功能: STM32微控制器有哪些主要特性?请描述STM32的GPIO(通用输…...
【单片机】DS2431芯片,读写128个字节,程序
ds2431pt&r stm32读写程序: 部分程序: #include "sys.h" #include "delay.h" #include "usart.h"#include <stdio.h> #include <stdlib.h> #include <string.h>#include "sys.h" #incl…...
[DDR4] DDR 简史
依公知及经验整理,原创保护,禁止转载。 专栏 《深入理解DDR4》 存和硬盘,这对电脑的左膀右臂,共同扛起了存储的重任。内存以其超凡的存取速度闻名,但一旦断电,内存中的数据也会消失。它就像我们的工作桌面&…...
前端 CSS 经典:在 Vue3 中使用渐进式图片
1. 什么是渐进式图片 当我们网站会加载很多图片的时候,有些图片尺寸很大,加载就会很慢,会导致页面长时间陷入白屏状态,用户体验很不好。所以可以使用渐进式图片,先给用户展示模糊图,这些图尺寸小ÿ…...
毕业了校园卡怎么改套餐?
毕业了校园卡怎么改套餐? 毕业生校园卡99元套餐变更8元保号套餐教程 学弟学妹们恭喜毕业呀🎓 校园卡绑定了好多东西注销不掉又不想交高额月租的看过来。 今天一招教你更改校园卡套餐。 中国移动/电信/联通App 打开App,在首页右上角点击人工…...
每一个男人都曾有一个机器人的梦想
每一个男人都曾有一个机器人的梦想 我也有 每一个男人都曾有一个机器人的梦想。对于我来说,这个梦想始于童年时代,那时变形金刚风靡一时,几乎所有80后的孩子都为之疯狂。我是80后中的一员,那时候的科技还远没有如今这般发达&#…...
中望CAD 2025 (ZW3D2025) 简体中文修改版
名称:中望CAD 2025 (ZW3D2025) 简体中文修改版 描述:一款三维CAD设计工具,运行破解补丁ZW3D2025-2024-Patch执行修补。 链接:夸克网盘分享 📁 大小:3.2GB 🏷 标签:#PC软件 #CAD #设…...
iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版分享
平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
Spring数据访问模块设计
前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...
Java数值运算常见陷阱与规避方法
整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...
Razor编程中@Html的方法使用大全
文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...
[ACTF2020 新生赛]Include 1(php://filter伪协议)
题目 做法 启动靶机,点进去 点进去 查看URL,有 ?fileflag.php说明存在文件包含,原理是php://filter 协议 当它与包含函数结合时,php://filter流会被当作php文件执行。 用php://filter加编码,能让PHP把文件内容…...
