目录
前言
查看页面原型,明确需求
页面原型
需求
阅读接口文件
思路分析
功能接口开发
控制层(Controller类)
业务层(Service类)
业务类
业务实现类
持久层(Mapper类)
接口测试
前后端联调
前言
部门管理修改功能的实现,依赖于根据id查询部门功能的实现,因此浏览本篇文章建议先浏览器根据id查询部门信息,文章传送门:SpringBoot案例-部门管理-根据id查询_熵240的博客-CSDN博客
查看页面原型,明确需求
页面原型
需求
点击要修改的部门后的编辑按钮,弹出如下对话框
只修改目标部门信息的名称即可
阅读接口文件
接口文件链接如下:
【腾讯文档】SpringBoot案例所需文档
https://docs.qq.com/doc/DUkRiTWVaUmFVck9N
思路分析
由接口文档可知,前端发起put请求,请求关键路径为/depts,同样是以json格式传递请求参数,如何接收json格式的请求参数,详细见文章请求响应-json参数的接收_熵240的博客-CSDN博客
具体是将json格式的数据封装在实体类中,其中使用@RequestBody 来进行标识
功能接口开发
控制层(Controller类)
具体关键代码如下:
/**
* 修改部门信息
*
* @param dept
*/
@PutMapping("/depts")
public Result Update(@RequestBody Dept dept) {
log.info("修改部门");
deptService.update(dept);
return Result.success();
}
业务层(Service类)
具体关键代码如下:
业务类
/**
* 修改部门信息
*
* @param dept
*/
void update(Dept dept);
业务实现类
@Override
public void update(Dept dept) {
// 补充为修改信息
dept.setCreateTime(LocalDateTime.now());
dept.setUpdateTime(LocalDateTime.now());
deptMapper.Update(dept);
}
持久层(Mapper类)
具体关键代码如下:
/**
* 修改部门信息
*
* @param dept
*/
@Update("update dept set name =#{name},update_time=#{updateTime},create_time=#{createTime} where id=#{id} ")
void Update(Dept dept);
接口测试
依然是是使用postman进行接口测试,发送请求的url地址以及json格式的请求参数如下:
运行结果如下
前后端联调
依然是使用课程提供的nginx项目,运行结果如下: