课程内容
-
新增员工
-
员工分页查询
-
启用禁用员工账号
-
编辑员工
-
导入分类模块功能代码
ps:这里并不是完整的笔记内容,只记录了一些作者认为值得注意或者有收获的点!!
一个项目里约定成俗的习惯很重要!!
就像本项目约定访问时管理端和用户端的前缀的不同,让我们在管理时可以很方便的区分开并且管理。
本项目约定:
-
管理端发出的请求,统一使用/admin作为前缀。
-
用户端发出的请求,统一使用/user作为前缀。
每一个开发过程都包含:需求分析和设计-代码开发-功能测试
需求分析和设计
-
产品原型
一般在做需求分析时,往往都是对照着产品原型进行分析,因为产品原型比较直观,便于我们理解业务。
-
接口设计
接口文档一般在实际项目中由小组组长编写,但身为一名合格的程序员,自身也需要去了解并学会如何编写。(待办)可以看看系统分析与设计方法或者系统分析与设计或者相关的书,了解一下各个范式和原则。
找到资料-->项目接口文档-->苍穹外卖-管理端接口.html
访问http://localhost:8080/doc.html
-
表设计
代码开发
开发顺序依次:Controller-Service接口-Service实现类-Mapper
-
设计DTO类
当前端提交的数据和实体类中对应的属性差别比较大时,建议使用DTO来封装数据 。根据接口来设计对应的DTO
-
Controller层
开发时,后端统一使用Result类来对后端数据进行统一封装
这里,以EmployeeController中创建新增员工方法 为例
/**
* 新增员工
* @param employeeDTO
* @return
*/
@PostMapping
@ApiOperation("新增员工")
public Result save(@RequestBody EmployeeDTO employeeDTO){
log.info("新增员工:{}",employeeDTO);
employeeService.save(employeeDTO);//该方法后续步骤会定义
return Result.success();
}
注:Result类定义了后端统一返回结果格式。
package com.sky.result;
import lombok.Data;
import java.io.Serializable;
/**
* 后端统一返回结果
* @param <T>
*/
@Data
public class Result<T> implements Serializable {
private Integer code; //编码:1成功,0和其它数字为失败
private String msg; //错误信息
private T data; //数据
public static <T> Result<T> success() {
Result<T> result = new Result<T>();
result.code = 1;
return result;
}
public static <T> Result<T> success(T object) {
Result<T> result = new Result<T>();
result.data = object;
result.code = 1;
return result;
}
public static <T> Result<T> error(String msg) {
Result result = new Result();
result.msg = msg;
result.code = 0;
return result;
}
}
-
Service层接口
-
Service层实现类
-
Mapper层
功能测试
-
接口文档测试
-
前后端联调测试
由于开发阶段前端和后端是并行开发的,后端完成某个功能后,此时前端对应的功能可能还没有开发完成, 导致无法进行前后端联调测试。所以在开发阶段,后端测试主要以接口文档测试为主。