项目开发总结

经历很多的项目,在项目开发的迭代过程中,越来越觉得<"规范">是非常非常重要的;可能一个项目组的不同项目都是多种风格,因此,规范化,统一化是非常非常重要的,也可以减少沟通成本、提高效率

一、项目结构

项目开发总结_第1张图片

①.exercise-provider:前端,第三方系统交互,消息,task入口

②.exercise-biz:业务组装处理层,将多个业务进行组装,整合

  • 对biz层的要求是只要进入biz层,通过注释,以及业务的处理流程,就知道这个方法干了啥
  1. 不要处理逻辑,只是用做业务的组装,流程处理,业务的处理去service完成
  2. 记录对biz层方法的监控,这个方法的qps,p99等指标
  3. 对controller传过来的参数进行校验,参数不符合条件,直接返回页面

③.exercise-service:业务处理层,此层级可以包含remoteService,adapter,converter

  • 此层级要达到的要求是处理不同的业务,但是与第三方的交互,以及数据库的交互,与其他业务的交互需要十分清晰

 

④.exercise-dao:数据库交互层,此层级主要是对数据库的增,删,改,查

  1. mapper.xml,mapper,po都可以使用 mybatis-generator.xml自动生成,但是需要修改生成之后的mapper文件,主要修改类似 deleteByPrimaryKey(),insertSelective(),selectByPrimaryKey() 等的方法名,因为这样的语意不清,然后把不使用的方法删除掉
  2. 注意添加@mapper注解和注释
  3. mapper.xml中使用标签,不要出现1=1
  4. mapper.xml的namespace与mapper的全类名一一对应
  5. 新加的标签与 格式保持一致
  6. 新加的增,删,改,查;入参,返回值都不要忘记

⑤.exercise-model:所有的req,res,vo,po,bo,enums,query等等

⑥.exercise-common:此层级包含utils,常量等等

二、层级之间的调用关系

项目开发总结_第2张图片

三、IDEA代码规范组件以及配置

1、安装 Alibaba Java Coding Guidelines

2、自动删除 import 无用的package【https://blog.csdn.net/csndhu/article/details/90956570】

3、自动展开 import java.utils.* 类型的导包【https://blog.csdn.net/csndhu/article/details/90956570】

4、安装 sonar 扫描代码写的是否规范

5、安装mybatis的插件

四、编程规范

 

五、代码质量

1、Api接口,消息,前端参数校验

外围系统是不可信任的,他们随时可能做任何的变更,这些变更都会影响我们自己的系统,因此,需要对外围系统做校验。

对外围系统校验有以下几点

  1. 对api、消息体的结构进行判断
  2. 对数据是否为空进行校验,对查询出的数据正确性与否进行校验(根据id去查询数据,都是返回多条数据)
  3. 对接口进行异常校验

2、增,删,改,查数据库数据校验

  1. 查询接口返回的数据(有些接口返回是Object,有些返回的是 List),对返回的数据是否为空需要进行校验
  2. 插入或更新数据的时候,一定要考虑并发情况。因为我们是2台机器,所以并发发生的时候,会出现数据问题
  3. 3、数据库索引

    1.  

    你可能感兴趣的:(开发总结)