【Tlias智能学习辅助系统】04 部门管理 删除 和 新增

Tlias智能学习辅助系统 04 部门管理 删除 和 新增

  • 删除部门API
    • DeptController.java
    • DeptService.java
    • DeptServiceImpl.java
    • DeptMapper.java
    • 前端联调
  • 新增部门API
    • 有一步简化
    • DeptController.java
    • DeptService.java
    • DeptServiceImpl.java
    • DeptMapper.java
    • 前端联调

删除部门API

请求路径:/depts/{id}
请求方式:DELETE
接口描述:该接口用于根据ID删除部门数据
参数 id 必须

DeptController.java

/**
 * 删除部门
 * @param id
 */
// 上次讲到过衍生注释
@DeleteMapping("/depts/{id}")
// @PathVariable 注解用于将 URL 中的模板变量绑定到方法的参数上
public Result delete(@PathVariable Integer id) {
    log.info("根据ID删除部门: {}", id);
    // 调用service删除部门
    deptService.delete(id);
    return Result.success();
}

DeptService.java

package com.futao.tliasspringbootweb.service;

import com.futao.tliasspringbootweb.pojo.Dept;

import java.util.List;

/**
 * 部门管理
 */
public interface DeptService {
    /**
     * 删除部门
     * @param id
     */
    void delete(Integer id);
}

DeptServiceImpl.java

package com.futao.tliasspringbootweb.service.impl;

import com.futao.tliasspringbootweb.mapper.DeptMapper;
import com.futao.tliasspringbootweb.pojo.Dept;
import com.futao.tliasspringbootweb.service.DeptService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class DeptServiceImpl implements DeptService {

    @Autowired
    private DeptMapper deptMapper;
		
	// ....

    @Override
    public void delete(Integer id) {
        deptMapper.deleteById(id);
    }
}

DeptMapper.java

package com.futao.tliasspringbootweb.mapper;

import com.futao.tliasspringbootweb.pojo.Dept;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * 部门管理
 */
@Mapper
public interface DeptMapper {

	// ...

    /**
     * 根据ID删除部门
     * @param id
     */
    @Delete("delete from dept where id = #{id}")
    void deleteById(Integer id);
}

前端联调

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

新增部门API

请求路径:/depts
请求方式:POST
接口描述:该接口用于添加部门数据
参数 name 必须

有一步简化

package com.futao.tliasspringbootweb.controller;

import com.futao.tliasspringbootweb.pojo.Dept;
import com.futao.tliasspringbootweb.pojo.Result;
import com.futao.tliasspringbootweb.service.DeptService;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Delete;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;


/**
 * 部门管理Controller
 */
@Slf4j
@RestController
@RequestMapping("/depts") //将公共的路径直接抽取到类上
public class DeptController {

    @Autowired
    private DeptService deptService;

    /**
     * 查询部门数据
     * @return
     */
    @GetMapping
    public Result list() {
        log.info("查询全部部门数据");
        List<Dept> deptList = deptService.list();
        return  Result.success(deptList);
    }

    /**
     * 删除部门
     * @param id
     */
    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Integer id) {
        log.info("根据ID删除部门: {}", id);
        deptService.delete(id);
        return Result.success();
    }

    /**
     * 新增部门
     * @param dept
     */
    @PostMapping
    public Result add(@RequestBody Dept dept) {
        log.info("新增了部门: {}", dept);
        deptService.add(dept);
        return Result.success();
    }
}

DeptController.java

/**
 * 新增部门
 * @param dept
 */
@PostMapping
public Result add(@RequestBody Dept dept) {
    log.info("新增了部门: {}", dept);
    deptService.add(dept);
    return Result.success();
}

DeptService.java

package com.futao.tliasspringbootweb.service;

import com.futao.tliasspringbootweb.pojo.Dept;
import java.util.List;

/**
 * 部门管理
 */
public interface DeptService {
    /**
     * 新增部门
     * @param dept
     */
    void add(Dept dept);
}

DeptServiceImpl.java

package com.futao.tliasspringbootweb.service.impl;

import com.futao.tliasspringbootweb.mapper.DeptMapper;
import com.futao.tliasspringbootweb.pojo.Dept;
import com.futao.tliasspringbootweb.service.DeptService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.time.LocalDateTime;
import java.util.List;

@Service
public class DeptServiceImpl implements DeptService {

    @Autowired
    private DeptMapper deptMapper;

    @Override
    public void add(Dept dept) {
        dept.setCreateTime(LocalDateTime.now());
        dept.setUpdateTime(LocalDateTime.now());

        deptMapper.insert(dept);
    }
}

DeptMapper.java

package com.futao.tliasspringbootweb.mapper;

import com.futao.tliasspringbootweb.pojo.Dept;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * 部门管理
 */
@Mapper
public interface DeptMapper {
    /**
     * 新增部门
     * @param dept
     */
    @Insert("insert into dept(name, create_time, update_time) values (#{name}, #{createTime}, #{updateTime})")
    void insert(Dept dept);
}

前端联调

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

友善RK3399v2平台利用rkmpp实现硬件编解码加速

测试VPU 编译mpp sudo apt update sudo apt install gcc g cmake make cd ~ git clone https://github.com/rockchip-linux/mpp.git cd mpp/build/linux/aarch64/ sed -i s/aarch64-linux-gnu-gcc/gcc/g ./arm.linux.cross.cmake sed -i s/aarch64-linux-gnu-g/g/g ./arm.lin…

6月2号总结

刷题记录Codeforces Round 925 &#xff08;A,B,C&#xff09; 1.A. Recovering a Small String 问题 - A - Codeforces 输入&#xff1a; 5 24 70 3 55 48 输出&#xff1a; aav rzz aaa czz auz 给定一个3~78的整数&#xff0c;将这个整数分成a,b,c&#xff0c;其中1表示…

洛谷P2370yyy2015c01 的 U 盘

传送门——P2370 yyy2015c01 的 U 盘 题解&#xff1a;题目意思很好理解&#xff0c;就是说&#xff0c;当能够达到预期的U盘的最小接口&#xff08;接口越大&#xff0c;能传递的文件越大&#xff09;&#xff0c;然后我们就需要先看题目了&#xff0c;有n个文件&#xff0c;每…

C# 使用Aspose生成和修改文档

Aspose库 C#中的Aspose库是一个强大的文件处理库&#xff0c;可以用于各种文件格式的创建、编辑、转换和操作。该库提供了丰富的功能&#xff0c;包括处理文档、电子表格、幻灯片、PDF、图像等多种文件格式&#xff0c;能够轻松实现文件的读取、写入、格式化、样式设置、数据操…

双指针法 ( 三数之和 )

题目 &#xff1a;给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的三元组。 注意&#xff1a;答案中不可以包含重复…

设计模式——结构型模式——责任链模式

责任链模式简介 责任链模式&#xff0c;又名职责链模式&#xff0c;为了避免请求发送者与多个请求处理者耦合在一起&#xff0c;将所有请求处理者通过前一对象记住其下一个对象的引用而成一条链&#xff1b;当有请求发生时&#xff0c;可将请求沿着这条链传递&#xff0c;传递过…

山东大学软件学院项目实训-创新实训-基于大模型的旅游平台(二十四)- 微服务(4)

目录 8. http客户端Feign 8.1 feign远程调用 8.2 feign自定义配置 8.3 feign性能优化 8.4 feign最佳实践 8. http客户端Feign 8.1 feign远程调用 RestTemplate存在的问题 &#xff1a; 代码可读性差 参数复杂URL难以维护 Feign是声明式的http客户端 使用步骤 &#xf…

03 使用堡塔和xshell

课程的目标 1、理解windows于Linux实现远程通信的过程和所使用的协议SSH 2、熟练使用远程连接工具堡塔和xshell等工具以及SSH和SCP&#xff0c;命令 课程实验 使用堡塔远程并操作centos并实现与windows之间的文件传输 2、使用xshell远程连接并操作centos与windows之间的文…

Day 10:100322. 删除星号以后字典序最小的字符串

Leetcode 100322. 删除星号以后字典序最小的字符串 给你一个字符串 s 。它可能包含任意数量的 ‘’ 字符。你的任务是删除所有的 ’ 字符。 当字符串还存在至少一个 ‘*’ 字符时&#xff0c;你可以执行以下操作&#xff1a; 删除最左边的 ‘*’ 字符&#xff0c;同时删除该星号…

EasyX的安装及使用

Easy X的下载 首先&#xff0c;打开EasyX的官网&#xff0c;点击下载。 下载完成&#xff0c;直接双击文件。点击下一步&#xff0c;直接点击安装&#xff0c;即可安装完成。 Easy X的使用 要使用Easy X&#xff0c;就要在编写代码时&#xff0c;使用头文件&#xff0c;其有两…

自定义注解处理器生成代码

前言 源码中给的几种注解处理器代码都是网上抄的&#xff0c;本文主要是提供了 Maven 源码&#xff0c;不需要自己网上研究爬坑(当然具体生成代码的逻辑还是得自己写)。且从 lombok 抄了可以解决 idea 代理 ProcessingEnvironment 类后所产生的问题。 以下是网上抄的注解处理…

用java实现客服聊天+网络爬虫下载音乐(java网络编程,io,多线程)

一 灵感&#xff1a; 在2022年的暑假&#xff0c;也就是我即将迈进高三的那个暑假&#xff0c;我并没有察觉自己应该要学习了&#xff0c;还是和过往的暑假一样玩着王者荣耀&#xff0c;凌晨2点睡觉&#xff0c;中午12点起床。我依稀记得这种状态一直持续到8月19。然而离开学还…

最全!最新!最细!Redis数据库从入门到应用

#前言&#xff1a; 该博客会详细介绍关于Redis数据库的内容&#xff0c;代码多有注释&#xff0c;最后会讲解如何将Redis应用&#xff08;以Python与Django为例&#xff09;。各位的点赞与关注将是小编变强的最大动力。 一、Redis数据库简介&#xff1a; Redis是一个开源的内…

fyne widget小部件2

fyne widget小部件2 form表单 package mainimport ("log""fyne.io/fyne/v2/app""fyne.io/fyne/v2/widget" )func main() {myApp : app.New()myWindow : myApp.NewWindow("Form Widget")entry : widget.NewEntry()textArea : widget.…

Stable Diffusion详细教程

目录 &#x1f40b;引言 &#x1f40b;Stable Diffusion基本概念 &#x1f988;潜在扩散模型 &#x1f988;图像生成原理 &#x1f40b;Stable Diffusion安装部署 &#x1f988;环境要求 &#x1f988;安装步骤 &#x1f40b;Stable Diffusion阶段 &#x1f988;准备阶…

正弦、余弦、正切

正弦、余弦、正切这三个概念都是在一个直角三角形这样一个上下文环境里定义的。在一个直角三角形中&#xff0c;斜边叫弦。 正弦&#xff08;sine&#xff09; 在一个给定的角θ&#xff0c;它的正弦就是这个角θ对着的直角边与弦的比值&#xff0c;记为sineθ。 余弦&#…

你想让ai干苦力,ai会叫你没脾气(问题实例)

当你想让ai生成的代码直接编译 - 你先要问自己一个直击灵魂的主题&#xff1a;我的修养配得上我的能力吗&#xff1f; 已发现存在需手动修复的问题 - 1/&#xff08;马大哈&#xff09;对于sdk理解的不 细致 &#xff0c;会用基类函数来代替派生类函数&#xff1b; 比如&#…

【kubernetes】探索k8s集群的pod控制器详解(Deployment、StatefulSet、DaemonSet、Job、CronJob)

目录 一、Pod控制器及其功用 二、pod控制器有多种类型 2.1ReplicaSet 2.1.1ReplicaSet主要三个组件组成 2.2Deployment 2.3DaemonSet 2.4StatefulSet 2.5Job 2.6Cronjob 三、Pod与控制器之间的关系 3.1Deployment 3.2SatefulSet 3.2.1StatefulSet三个组件 3.2.2为…

7 款最佳 iPhone 解锁软件和应用程序

在 iOS 上反复失败的解锁尝试可能会导致 iPhone 永久禁用。适当的iPhone解锁器可以帮助恢复您的设备。大多数解锁器的成功率和可靠性都很低。这就是为什么从最好的 iPhone 解锁器中进行选择可以帮助绕过 MDM、删除密码运营商锁定并重新获得 iCloud 访问权限很重要的原因。 7 款…

Windows安装Docker

启用虚拟化 打开 勾选Hyper-V 验证 下载Docker Docker官网 阿里云 安装Docker 傻瓜式安装 遇到问题&#xff1a; 打开命令窗口&#xff0c;执行命令&#xff1a; wsl --update升级完成之后点击Restart按钮即可 切换阿里镜像 https://fmkoym4e.mirror.aliyuncs.com