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

Spring Boot部门管理系统:查询、删除、新增实战

文章目录

  • 前言
    • 部门管理系统
      • 一、查询部门
        • 1. 功能实现流程图
        • 2. Controller 层
        • 3. Service 层
        • 4. Mapper 层
      • 二、删除部门
        • 1.业务流程图
          • 整体流程与三层架构职责
        • 2.Controller层
          • 方式一:通过 `HttpServletRequest` 对象获取
          • 方式二:使用 `@RequestParam` 注解绑定参数
          • 方式三:省略 `@RequestParam`(参数名匹配)
        • 3.Service层
        • 4.Mapper层
      • 三、新增部门
        • 1.业务流程图
        • 2.Controller 层(接收 JSON 参数)
        • 3. Service 层(补全属性 + 调用 Mapper)
        • 4. Mapper 层(执行 SQL 插入)
        • 5.核心知识点小结
      • 四、修改部门
        • 1.业务需求
        • 2.路径参数
          • 核心概念
          • 方式 1
          • 方式 2
          • 适用场景与特点
        • 3.查询回显
        • 5.修改数据
          • 1. Controller 层
          • 2. Service 层
          • 3. Mapper 层
          • 核心流程梳理
          • 关键注意事项
  • 总结


前言

部门管理系统是企业管理中常见的核心模块,用于高效管理组织架构。本文通过实际代码示例,详细讲解部门管理系统的三大核心功能:查询、删除和新增部门。内容涵盖Spring Boot三层架构(Controller、Service、Mapper)的实现、参数接收方式对比(如@RequestParam与@RequestBody)、MyBatis注解开发等关键技术点,帮助读者快速掌握企业级开发中的典型场景和最佳实践。


部门管理系统

一、查询部门

1. 功能实现流程图

在这里插入图片描述

2. Controller 层
@RestController
public class DeptController {@Autowiredprivate DeptService deptService;@GetMapping("/depts")public Result findAll(){List<Dept> deptList = deptService.findAll();return Result.success(deptList);}
}
3. Service 层
@Service
public class DeptServiceImpl implements DeptService {@Autowiredprivate DeptMapper deptMapper;@Overridepublic List<Dept> findAll() {return deptMapper.findAll();}
}
4. Mapper 层
@Mapper
public interface DeptMapper {// 方式1:手动结果映射@Results({@Result(column = "create_time", property = "createTime"),@Result(column = "update_time", property = "updateTime")})@Select("select id, name, create_time, update_time from dept order by update_time desc")List<Dept> findAll();// 方式2:SQL别名映射@Select("select id, name, create_time createTime, update_time updateTime from dept order by update_time desc")List<Dept> findAll();
}

二、删除部门

1.业务流程图

在这里插入图片描述

整体流程与三层架构职责
  1. Controller 层:负责接收请求参数(三种方式可选 ),调用 Service 层方法,最后响应结果(返回 Result.success() )。
  2. Service 层:后续需补充实现,主要封装业务逻辑(如校验部门是否存在关联数据,决定能否删除 ),再调用 Mapper 层操作数据库。
  3. Mapper 层:定义接口方法,通过 MyBatis 等框架执行 delete from dept where id = ? SQL ,实现数据库中部门数据删除。
2.Controller层

在实现 “根据 ID 删除部门” 功能时,Controller 层接收请求参数有以下三种方式,结合代码和要点总结如下:

功能背景

需求为通过部门主键 ID 执行删除操作,接口请求路径/depts 、请求方式 DELETE ,需接收 id 参数(部门 ID ),借助三层架构(Controller、Service、Mapper )完成数据库删除逻辑(Mapper 层执行 delete from dept where id = ? SQL )。

三种参数接收方式及代码示例

方式一:通过 HttpServletRequest 对象获取
@DeleteMapping("/depts")
public Result deleteDept
http://www.xdnf.cn/news/17290.html

相关文章:

  • 嵌入式处理器指令系统:精简指令集RISC与复杂指令集CISC的简介,及区别
  • 数据结构学习(days04)
  • Node.js- express的基本使用
  • 嵌入式学习---在 Linux 下的 C 语言学习 Day9
  • 《第五篇》基于RapidOCR的图片和PDF文档加载器实现详解
  • 基于单片机GD32E103的HID按键问题分析
  • 日常反思总结
  • electron:vue3+vite打包案例
  • Spring Cloud系列—Eureka服务注册/发现
  • CSS高频属性速查指南
  • 【普通地质学】地球的物质组成
  • Windows 如何上架 iOS 应用?签名上传全流程 + 工具推荐
  • LeetCode——118. 杨辉三角
  • 【Git】修改本地和远程的分支名称
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘chainer’问题
  • 基于AI的自动驾驶汽车(AI-AV)网络安全威胁缓解框架
  • Adobe Analytics 数据分析平台|全渠道客户行为分析与体验优化
  • 【第5话:相机模型1】针孔相机、鱼眼相机模型的介绍及其在自动驾驶中的作用及使用方法
  • 开源流媒体服务器ZLMediaKit 的Java Api实现的Java版ZLMediaKit流媒体服务器-二开视频对话
  • 【java】DDD架构同普通微服务项目的区别
  • DAY 36 复习日
  • MinIO01-入门
  • ara::log::LogStream::WithTag的概念和使用案例
  • Patsy的dmatrix() 函数
  • 利用m0改造循迹模块处理笔记00
  • 智慧酒店:科技赋能下的未来住宿新体验
  • 人工智能领域、图欧科技、IMYAI智能助手2025年7月更新月报
  • RabbitMQ延时队列的两种实现方式
  • NLP自然语言处理 03 Transformer架构
  • 数据集相关类代码回顾理解 | sns.distplot\%matplotlib inline\sns.scatterplot