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

案例-02.部门管理-查询

一.查询部门-需求

二.查询部门-思路

API接口文档

 

 三.代码实现

1.controller层:负责与前端进行交互,接收前端所发来的请求

注:Slf4j用于记录日志使用,可以省略private static Logger log = LoggerFactory.getLogger(DeptController.class);这行代码从而直接调用log对象。

注:@RequestMapping(value = "/depts",method = RequestMethod.GET)   指定请求方式为GET
但是这种请求方式过于麻烦,因此使用@GetMapping()注解,其含义也是请求方式为Get

package com.gjw.controller;/*** 部门管理Controller*/import com.gjw.anno.Log;
import com.gjw.pojo.Dept;
import com.gjw.pojo.Result;
import com.gjw.service.DeptService;
import com.gjw.service.impl.DeptServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;import java.util.List;@Slf4j // 记录日志使用
@RestControllerpublic class DeptController {@Autowiredprivate DeptService deptService;//    @RequestMapping(value = "/depts",method = RequestMethod.GET)   指定请求方式为GET@GetMapping("/depts")   // 指定请求方式为GETpublic Result list(){log.info("查询全部部门数据");// 调用service层查询全部部门数据List<Dept> deptList = deptService.list();return Result.success(deptList);}}

设置Controller层接收前端发来的Get请求方式,url请求地址为/depts的请求后,controller层负责调用service层,由service层进行逻辑处理。因此通过依赖注入@Autowired来注入Service层的对象deptService。最后返回给前端的是一个统一响应结果Result。Result中封装的数据是查询出来的全部部门数据,封装在一个list集合当中。

2.service层:用来进行逻辑处理,并连接dao层,将从Dao层获得到的数据返回给controller层

service层接口:

package com.gjw.service;import com.gjw.pojo.Dept;import java.util.List;public interface DeptService {List<Dept> list();
}

service层实现类:

package com.gjw.service.impl;import com.gjw.mapper.DeptLogMapper;
import com.gjw.mapper.DeptMapper;
import com.gjw.mapper.EmpMapper;
import com.gjw.pojo.Dept;
import com.gjw.pojo.DeptLog;
import com.gjw.service.DeptLogService;
import com.gjw.service.DeptService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;import java.time.LocalDateTime;
import java.util.List;@Service
public class DeptServiceImpl implements DeptService {@Autowiredprivate DeptMapper deptMapper;@Overridepublic List<Dept> list() {return deptMapper.list();}}

service层中的list方法使用注入的deptMapper对象调用list方法来进行数据的获取。

3.Dao层:连接数据库进行数据的获取并返回给service层

package com.gjw.mapper;import com.gjw.anno.Log;
import com.gjw.pojo.Dept;
import org.apache.ibatis.annotations.*;import java.util.List;/*** 部门管理*/
@Mapper
public interface DeptMapper {/*** 查询全部部门数据* @return*/@Select("select * from dept")List<Dept> list();}

使用list方法查询全部的部门数据,并以List<Dept>集合的方式由service层返回到controller层。并在controller层通过统一响应方式Result响应给前端

相关文章:

案例-02.部门管理-查询

一.查询部门-需求 二.查询部门-思路 API接口文档 三.代码实现 1.controller层&#xff1a;负责与前端进行交互&#xff0c;接收前端所发来的请求 注&#xff1a;Slf4j用于记录日志使用&#xff0c;可以省略private static Logger log LoggerFactory.getLogger(DeptControlle…...

src和href区别

src和href区别 (1)请求资源类型不同(2)作用结果不同(3)解析方式不同 (1)请求资源类型不同 href 用来建立文档和元素之间的链接(是引用),常用的有a、linksrc 在请求src资源时候会将指向的资源下载并且应用到文档中(引入),常用的有script、iframe、image。 (2)作用结果不同 hr…...

Java每日精进·45天挑战·Day19

第一部分&#xff1a;移除数字以形成最小数的贪心算法实现 在编程的世界里&#xff0c;我们经常遇到需要对字符串表示的数字进行操作的问题。今天&#xff0c;我们要深入探讨一个具体的挑战&#xff1a;给定一个以字符串形式表示的非负整数 num 和一个整数 k&#xff0c;我们的…...

区块链的交易管理和共识机制

区块链的交易管理和共识机制是其核心功能&#xff0c;以下为你详细介绍它们的实现方式&#xff1a; 交易管理的实现 交易发起 • 用户使用钱包软件创建一笔交易&#xff0c;该交易包含发送方地址、接收方地址、转账金额等关键信息。同时&#xff0c;发送方会使用自己的私钥对…...

最新国内 ChatGPT Plus/Pro 获取教程

最后更新版本&#xff1a;20250202 教程介绍&#xff1a; 本文将详细介绍如何快速获取一张虚拟信用卡&#xff0c;并通过该卡来获取ChatGPT Plus和ChatGPT Pro。 # 教程全程约15分钟开通ChatGPT Plus会员帐号前准备工作 一个尚未升级的ChatGPT帐号&#xff01;一张虚拟信用卡…...

Apollo 9.0 速度动态规划决策算法 – path time heuristic optimizer

文章目录 1. 动态规划2. 采样3. 代价函数3.1 障碍物代价3.2 距离终点代价3.3 速度代价3.4 加速度代价3.5 jerk代价 4. 回溯 这一章将来讲解速度决策算法&#xff0c;也就是SPEED_HEURISTIC_OPTIMIZER task里面的内容。Apollo 9.0使用动态规划算法进行速度决策&#xff0c;从类名…...

Apache Iceberg 与 Apache Hudi:数据湖领域的双雄对决

在数据存储和处理不断发展的领域中&#xff0c;数据湖仓的概念已经崭露头角&#xff0c;成为了一种变革性的力量。数据湖仓结合了数据仓库和数据湖的最佳元素&#xff0c;提供了一个统一的平台&#xff0c;支持数据科学、商业智能、人工智能/机器学习以及临时报告等多种关键功能…...

【LeetCode Hot100 普通数组】最大子数组和、合并区间、旋转数组、除自身以外数组的乘积、缺失的第一个正整数

普通数组 1. 最大子数组和&#xff08;Maximum Subarray&#xff09;解题思路动态规划的优化解法&#xff08;Kadane 算法&#xff09;核心思想 代码解析 2. 合并区间&#xff08;Merge Intervals&#xff09;解题思路代码实现 3. 旋转数组&#xff08;Rotate Array&#xff09…...

共享存储-一步一步部署ceph分布式文件系统

一、Ceph 简介 Ceph 是一个开源的分布式文件系统。因为它还支持块存储、对象存储&#xff0c;所以很自 然的被用做云计算框架 openstack 或 cloudstack 整个存储后端。当然也可以单独作 为存储&#xff0c;例如部署一套集群作为对象存储、SAN 存储、NAS 存储等。 二、ceph 支…...

19.Python实战:实现对博客文章的点赞系统

Flask博客点赞系统 一个基于Flask的简单博客系统&#xff0c;具有文章展示和点赞功能。系统使用MySQL存储数据&#xff0c;支持文章展示、点赞/取消点赞等功能。 功能特点 文章列表展示文章详情查看&#xff08;模态框展示&#xff09;点赞/取消点赞功能&#xff08;每个IP只…...

【stm32】定时器输出PWM波形(hal库)

一. PWM基本原理 PWM是一种通过调节信号的占空比&#xff08;Duty Cycle&#xff09;来控制输出平均电压的技术。占空比是指高电平时间与整个周期时间的比值。例如&#xff1a; - 占空比为50%时&#xff0c;输出平均电压为电源电压的一半。 - 占空比为100%时&#xff0c;输出始…...

当Ollama遇上划词翻译:我的Windows本地AI服务搭建日记

&#x1f680; 实现Windows本地大模型翻译服务 - 基于OllamaFlask的划词翻译实践 &#x1f6e0;️ 步骤概要1️⃣ python 环境准备2️⃣ Ollama 安装3️⃣ 一个 Flask 服务4️⃣ Windows 服务化封装5️⃣ 测试本地接口6️⃣ 配置划词翻译自定义翻译源7️⃣ 效果展示8️⃣ debug…...

Linux上Elasticsearch 集群部署指南

Es 集群部署 Es 集群部署 Es 集群部署 准备好三台服务器。示例使用&#xff1a;110.0.5.141/142/143 1、es用户和用户组创建&#xff0c;使用root账号 groupadd esuseradd -g es es2、将es安装包和ik分词器上传到&#xff1a;/home/es/目录下&#xff08;任意目录都行&#…...

字节Trae使用感想(后端)

前言 昨天分享了字节哥的Trae从0到1创作模式构建一个vue前端项目&#xff0c;今天又来试试她的后端项目能力。不是我舔&#xff0c;不得不说确实不错。可惜现在曾经没有好好学习&#xff0c;进不了字节。既然进不了字节&#xff0c;那我就用字节哥的产品吧。 后面有惊喜…...

国产编辑器EverEdit - 二进制模式下观察Window/Linux/MacOs换行符差异

1 换行符格式 1.1 应用场景 稍微了解计算机历史的人都知道&#xff0c; 计算机3大操作系统&#xff1a; Windows、Linux/Unix、MacOS&#xff0c;这3大系统对文本换行的定义各不相同&#xff0c;且互不相让&#xff0c;导致在文件的兼容性方面存在一些问题&#xff0c;比如它们…...

文心一言4月起全面免费,6月底开源新模型:AI竞争进入新阶段?

名人说&#xff1a;莫听穿林打叶声&#xff0c;何妨吟啸且徐行。—— 苏轼 Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 目录 一、文心一言免费化的背后&#xff1a;AI成本与应用的双重驱动1️⃣成本下降&#xff0c;推动文心一言普及2…...

解锁机器学习算法 | 线性回归:机器学习的基石

在机器学习的众多算法中&#xff0c;线性回归宛如一块基石&#xff0c;看似质朴无华&#xff0c;却稳稳支撑起诸多复杂模型的架构。它是我们初涉机器学习领域时便会邂逅的算法之一&#xff0c;其原理与应用广泛渗透于各个领域。无论是预测房价走势、剖析股票市场波动&#xff0…...

如何使用Three.js制作3D月球与星空效果

目录 1. 基本设置2. 创建星空效果3. 创建月球模型4. 添加中文3D文字5. 光照与相机配置6. 动画与控制7. 响应式布局8. 结语 在本文中&#xff0c;我们将一起学习如何利用Three.js实现一个3D月球与星空的效果&#xff0c;并添加一些有趣的元素&#xff0c;比如中文3D文字和互动功…...

SQL语句语法

SQL数据库的结构为 库database 表table 段segment 行row 列column 或field SQL 语句主要分为以下几类&#xff1a; 数据定义语言&#xff08;DDL&#xff09;&#xff1a;用于定义数据库对象&#xff0c;如数据库、表、视图、索引等。数据操作语言&#xff08;DML&#xff09;&…...

github上文件过大无法推送问题

GitHub 对文件大小有限制&#xff0c;超过 100 MB 的文件无法直接推送到仓库中。 解决思路&#xff1a; 使用 Git Large File Storage (Git LFS) 来管理大文件不上传对应的大文件 使用Git LFS&#xff1a; 1. 安装 Git LFS 首先&#xff0c;你需要安装 Git LFS。可以按照以…...

Java 8+ 时间类型 :从 LocalDateTime 到 Instant

一、核心前置知识 1. 核心包 所有新时间类型都位于 java.time 包下&#xff0c;无需引入第三方依赖&#xff0c;JDK 8 原生支持。 2. 核心设计理念 领域驱动设计&#xff1a;将「日期、时间、时区、时间戳、时间间隔」严格拆分&#xff0c;每个类型只负责一件事&#xff0c…...

神经渲染“魔法”之源:一文读懂位置编码的奥秘与未来

神经渲染“魔法”之源&#xff1a;一文读懂位置编码的奥秘与未来 引言 在AI生成逼真3D世界的浪潮中&#xff0c;神经辐射场&#xff08;NeRF&#xff09;无疑是一颗耀眼的明星。然而&#xff0c;你是否想过&#xff0c;一个简单的多层感知机&#xff08;MLP&#xff09;为何能“…...

Loki‘s Insight:OpenClaw AI智能体本地调试与上下文可视化工具

1. 项目概述&#xff1a;为AI智能体打开一扇“观察窗”如果你和我一样&#xff0c;深度使用过像OpenClaw这类本地运行的AI智能体框架&#xff0c;那你一定经历过这样的困惑&#xff1a;我精心准备的记忆文件&#xff08;MEMORY.md&#xff09;、用户档案&#xff08;USER.md&am…...

别再傻傻打全称了!LaTeX/BibTeX用户如何一键搞定IEEE引用格式(含期刊会议缩写库)

LaTeX/BibTeX高效引用&#xff1a;IEEE期刊会议缩写自动化解决方案 引言 每次在LaTeX论文中引用IEEE文献时&#xff0c;你是否都要手动输入完整的期刊会议名称&#xff1f;当参考文献列表中出现格式不统一的缩写时&#xff0c;审稿人会不会皱眉&#xff1f;作为计算机、电子工程…...

链表 双指针

1. 快慢指针&#xff08;起点不一致&#xff09; 起点不一致的快慢指针&#xff1a;快指针先走 n 步&#xff0c;然后两个指针同时移动&#xff0c;快指针到达末尾时&#xff0c;慢指针正好在目标位置。 初始化&#xff1a;两个指针 slow、fast 都指向头节点。快指针先行&#…...

从硬件工程师视角看安卓手机:可编程平台、传感器融合与生态系统

1. 从“能打电话就行”到“数字瑞士军刀”&#xff1a;我的安卓手机深度体验与思考作为一名在电子设计自动化&#xff08;EDA&#xff09;和可编程逻辑领域摸爬滚打了二十多年的工程师&#xff0c;我的工具箱里塞满了各种开发板、逻辑分析仪和仿真软件。长久以来&#xff0c;我…...

NOR Flash技术解析与嵌入式系统应用实践

1. NOR Flash技术基础与嵌入式应用优势NOR Flash作为一种非易失性存储器&#xff0c;自1984年问世以来已成为嵌入式系统的核心存储方案。其核心工作原理基于浮栅晶体管结构&#xff0c;通过在浮栅中注入或释放电荷来实现数据的存储与擦除。与NAND Flash相比&#xff0c;NOR Fla…...

2026 AI大会PPT已开始定向回收?:紧急备份的最终版下载包(含3月1日前有效链接+离线阅读手册+术语对照表)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;2026年AI技术大会演讲PPT下载 2026年AI技术大会官方已开放全部主题演讲PPT的公开下载通道&#xff0c;所有材料均采用CC BY-NC-SA 4.0协议授权&#xff0c;支持学术引用与非商业再分发。核心资源托管于…...

3分钟搞定Windows激活:KMS_VL_ALL_AIO智能脚本终极指南

3分钟搞定Windows激活&#xff1a;KMS_VL_ALL_AIO智能脚本终极指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统激活而烦恼吗&#xff1f;KMS_VL_ALL_AIO智能激活脚本为您提…...

AISMM安全维度落地指南:从合规审计到AI模型投毒防护,5步构建企业级智能安全基线

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AISMM安全维度的演进逻辑与奇点意义 AISMM&#xff08;Artificial Intelligence Security Maturity Model&#xff09;并非传统安全框架的线性延伸&#xff0c;而是AI系统在对抗性环境、数据漂移与模型…...