需求分析
查看产品经理做的产品原型,列出具体的功能模块,确定每个功能的接口。要做到什么功能,效果
明确业务规则
业务说明:需要什么数据
业务流程:确定可能要用到的其他接口
如:添加商品到购物车,订单提交,订单支付界面,下单成功页面
修改用户信息:首先要回显信息,修改信息,保存信息
数据库设计
结合接口看,看接口里面有啥数据,结合产品原型
数据库具体设计,冗余字段的设计,逻辑外键
根据需求,设计出数据库表
数据库设计时,根据前面的产品原型,多次出现的字段,多设计为冗余字段,不然又要去查数据库连接查询,有了冗余字段直接单表查询
注意冗余字段不能大量设计,必须是比较稳定,不会大量变化的字段才能设计成冗余字段
逻辑外键:数据库里不是外键,是程序维护外键关系
接口设计
编写接口文档
通常一个功能对应一个接口,有时一个功能对应多个接口,比如说要修改地址,就要先回显数据,再进行修改。
设计要用到的各种实体
设计pojo(实体类,DTO,VO)
- Entity:纯数据对象,对应数据库
- DTO:用来接收参数,负责验证

- VO:用于返回前端数据,可以包含计算字段
确定实体功能
每个功能下写接口信息
根据产品原型分析得到:请求方式,路径,参数,返回结果(直接从产品原型上看)
(注意隐藏数据,比如订单id,肯定是要迭代更新的)
- 接口基本信息包括:请求路径,请求方式,接口功能描述
- 请求参数:请求参数格式,请求参数说明
- 响应数据:响应数据类型,响应参数说明,响应数据样例
编码
每一个模块创建一个controller
先写controller层-写类-想好实现逻辑
再写service层-写接口,(重点是serviceImpl层的代码书写)其下面的impl文件夹写类-定义controller层要用到的方法
最后写mapper层-写接口-执行sql,复杂sql使用动态sql来查,动态拼接查询条件
测试
提交代码
利用git提交代码