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

案例-04.部门管理-删除

一.功能演示

二.需求说明

三.接口文档

 

四.思路

既然是通过id删除对应的部门,那么必然要获取到前端请求的要删除部门的id。id作为请求路径传递过来,那么要从请求路径中获取,id是一个路径参数。因此使用注解@PathVariable获取路径参数。

请求方式为delete,因此使用注解@DeleteMapping。

五.controller层

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 // 记录日志使用
@RestController
@RequestMapping("/depts")
public class DeptController {
    @Autowired
    private DeptService deptService;

//    @RequestMapping(value = "/depts",method = RequestMethod.GET)   指定请求方式为GET
    @GetMapping()   // 指定请求方式为GET
    public Result list(){
        log.info("查询全部部门数据");

        // 调用service层查询全部部门数据
        List<Dept> deptList = deptService.list();
        return Result.success(deptList);
    }

    @Log
    @DeleteMapping("{id}")  // 指定请求方式为DELETE
    public Result delete(@PathVariable Integer id) throws Exception {
        log.info("根据id删除部门:{}",id);

        // 调用service删除部门
        deptService.deleteById(id);
        return Result.success();
    }
}

六.service层

service接口

package com.gjw.service;

import com.gjw.pojo.Dept;

import java.util.List;

public interface DeptService {
    List<Dept> list();

    void deleteById(Integer id) throws Exception;
}
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 {

    @Autowired
    private DeptMapper deptMapper;

    @Override
    public List<Dept> list() {
        return deptMapper.list();
    }


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


}

七.Mapper层

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();


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

}

八.前后端联调

进行前后端联调即可


http://www.kler.cn/a/549143.html

相关文章:

  • 负载测试工具有哪些?
  • unity学习44:学习Animator 的一个动作捕捉网站,实测好用
  • 蓝桥杯篇---IAP15F2K61S2串口
  • 【第13章:自监督学习与少样本学习—13.2 少样本学习(FSL)与元学习(Meta-Learning)的基础理论与应用案例】
  • 29、深度学习-自学之路-深入理解-NLP自然语言处理-做一个完形填空,让机器学习更多的内容程序展示
  • Ubuntu 下 nginx-1.24.0 源码分析 - ngx_log_error 函数
  • MQ常见面试题
  • 神经网络新手入门(1)目录
  • Ubuntu 下 nginx-1.24.0 源码分析 - ngx_ssl_init 函数
  • 搭建一个经典的LeNet5神经网络
  • 0x02递推与递归
  • Hive增量迁移方案与实操PB级
  • TestHubo简介与安装
  • 滑动窗口——优先队列写法
  • 本地通过隧道连接服务器的mysql
  • 面试题整理:操作系统
  • 洛谷 P2894 USACO08FEB Hotel 题解
  • FFmpeg源码:url_find_protocol函数分析
  • Python Cookbook-1.13 访问子字符串
  • unity学习41:动画里的曲线curve参数 和 事件 events