开发代码自我规范-高效开发参照-代码自我review
开发代码自我规范:
- 单元测试跑一下。
- 事务未提交问题,(尽量在aftercommit写逻辑,不一定有效;ttl保存;调整隔离级别,另外增删改要加事务)。
- 异常处理。
- insertOrUpdate 或者 selectThenInsert操作 都需要同步锁,另外加锁场景注意限制锁范围,
- 刷数据接口重复请求(静态变量判断)。
- 增加详细日志【如果测试环境的打印不出来,需要调整日志的打印级别,注意启动参数profiles可能也要调整】。
- 异步threadlocal有没有值。
- aftercommit异常捕获。
- 关注编辑器警告。
- sql一对多导致查询数据不正确,这个非常隐蔽,on条件尽量写到最全。
- 整体检查一遍代码,比如有没有写错字段,对对需求。
- 代码层面:嵌套的事务隔离级别回滚机制(spring),@Retryable 、@Async生效(启动类上增加@Enable* + 同类中注入自身类)。
- 测试环境的报错不能放过,尤其是循环刷数据中的报错。
- 根据实际场景,减少无用执行逻辑,只需要更新部分的业务表,禁止扩大更新范围(定时任务默认是单线程的,单个定时任务如果间隔短,耗时长,就会始终占据单线程。即便定时任务改造成多线程,如果多线程占用资源耗时大,也会导致无法执行,这就讲究代码的执行效率和减少无用功,禁止粗暴得全局类更新)。
- 代码备注要相对完善
- 分析问题时,不要轻易下猜测性结论,需要先结合监控+日志综合分析。
- 抛出的异常会不会导致正常业务流程全部中止(存在分支或者循环的场景)?
正文到此结束
- 本文标签: Java Spring Spring Boot
- 本文链接: https://code.jiangjiesheng.cn/article/353
- 版权声明: 本文由小江同学原创发布,转载请先联系本站长,谢谢。