1、如何根据前端页面,分析业务功能需求,及相应的接口信息?

af24908c64105126bf00b4ce736304c.png
1、结合页面分析大致的功能需求情况;
2、根据已有的字段情况,尝试设计数据库表结构;
3、进行接口定义分析:入参、出参、请求路径、请求方式等;
4、养成良好的编码习惯,方法名可根据个人情况自行拟定,但要统一并且见名知意;

2、基于商家品牌运营管理模块,除品牌表外,所涉及的其它表有哪些?对应的表结构是如何设计?为什么这么设计?

1、文件信息表:前端上传品牌logo时,就自动调用服务保存数据到该表中,并返回该Vo对象,只是其中缺少了business_id,需要在成功保存时,把业务id赋值给该字段;
重要字段:business_id 业务id business_type—>业务类型,目前项目中有三种,头像icon、品牌logo、菜品图片;
设计目的:商户 1——>图片 n 即一对多得关系,在多方(n)添加一方的主键;
image.png
2、数据字典表:存储项目中所有的常量字段,并在运营商管理端集成该表CRUD,可实现在项目上线后,不需重启即可更新对应的字段,如对测试字段的启用和禁用;品牌分类字段,点击下拉框即获取关联查询的字段;
重要字段:parent_key data_key data_value
设计目的:
1、便于分类管理,可根据名称快速定位功能模块;
2、多个字段拼接可避免value值重复,类似组合id;
image.png

3、能够说出品牌管理的业务开发流程?

3dada63e467a54ae78ca973a7ed5e7c.png
BrandController:
1、接收前端请求;
2、发起远程Dubbo调用;
3、统一返回ResponseWrap;
BrandFaceImpl:
1、本地调用service模块下CRUD方法;
2、可根据需求通过RPC协议远程调用其他服务;
3、封装结果,讲POJO转化为VO;
4、返回VO
IBrandService:品牌的业务接口定义,为BrandFaceImpl提供核心业务逻辑的定义;
BrandServiceImpl:品牌的业务接口定义实现,即对数据库进行CRUD

4、把文件服务当作通用服务,单独创建一个模块的优势:

1、代码复用性
2、扩展性
3、可在图片存储前进行 图片审核
4、文件存储容器计费