2022-04-21Spring Boot开发规范

时间:2025-04-06 19:03:12

Spring Boot开发规范

版本号 V1.0 日期 2019.09.11
XXXX科技有限公司

版本历史

编辑时间 版本 作者 编辑内容
2019.09.11 V1.0 李释哲 开发规范初步制定

前言

为了更好的进行代码维护,减少因代码不规范造成人力、时间成本的增加,特制定以下规范,用于Spring Boot项目开发。

注:Spring Cloud项目也适用于此规范。部分规范也适用于其它项目开发。

一、代码规范

(一)命名规范

\1. 类名使用“大驼峰”,但以下情况例外:DAO、VO等。

\2. 变量名使用“小驼峰”。

\3. 代码命名中严禁使用中英混合命名方式,包括文件命名。

\4. 请求路径中使用“_”进行单词的分割,理论上不能出现大写字母。(这里的“请求路径”包括接口路径和页面路径)

\5. 代码中不允许出现连续两个或两个以上空行。

\6. 注释应加在代码上方,避免代码过长看不到代码后面的注释。

\7. Service/DAO层方法命名规范

l 获取单个对象的方法用get做前缀。

l 获取多个对象的方法用list做前缀,复数形式结尾如listObjects。

l 获取统计值的方法用count做前缀。

l 插入的方法用save/insert做前缀。

l 删除的方法用remove/delete做前缀。

l 修改的方法用update做前缀。

(二)结构规范

  1. 通常情况下类结构分为五层,分别是:controller、service、manager、dao、entity,类名后缀分别对应为Controller、Service、Manager、DAO、Entity。

A. Service 层:相对具体的业务逻辑服务层。

B. Manager 层:通用业务处理层,它有如下特征:

  1. 对第三方平台封装的层,预处理返回结果及转化异常信息 ;

  2. 对 Service 层通用能力的下沉,如缓存方案、中间件通用处理 ;

  3. 与 DAO 层交互,对多个 DAO 的组合复用。

C. DAO 层:数据访问层,与底层 MySQL 、 Oracle 、 Hbase 等进行数据交互。

  1. 层结构由前至后区分层次,前面为上层,后面为下层。下层不允许调用上层方法,同层见不能相互调用,允许跨层调用。

  2. Service层暴露出来的服务一定是接口,内部的实现类用Impl的后缀与接口区别。

  3. 根据项目来决定包结构应为水平或垂直划分。

二、开发规范

  1. SVN提交时必须有备注说明,无论提交的是什么内容。

  2. 理论上来说每一个controller方法都应该有对应的单元测试方法,需要的话service或manager层也可以有相应的测试方法。

  3. 接口一律使用POST请求方式,通常接口参数和返回结果都应为JSON格式。

  4. 如果系统中某个功能的调用链路上的涉及对象超过3个,使用时序图来表达并且明确各调用环节的输入与输出。