youlai-mall youlai-mall
首页
  • 项目介绍
  • 项目启动
  • 项目部署
  • 开发规范
  • mall-admin-web (opens new window)
  • mall-app (opens new window)
  • vue3-element-admin (opens new window)
  • knife4j接口文档 (opens new window)
  • 有来商城

    • youlai-mall (opens new window)
    • mall-admin-web (opens new window)
    • mall-app (opens new window)
    • mall-pc (opens new window)
  • 其他

    • vue3-element-admin
问答
  • 后端

    • spring (opens new window)
    • mybatis-plus (opens new window)
    • knife4j (opens new window)
  • 前端

    • element-plus (opens new window)
    • vue3 (opens new window)
    • vite2 (opens new window)
  • 移动端

    • uni-app (opens new window)
💖支持
  • 博客园主题awescnb (opens new window)
Gitee (opens new window)
GitHub (opens new window)
首页
  • 项目介绍
  • 项目启动
  • 项目部署
  • 开发规范
  • mall-admin-web (opens new window)
  • mall-app (opens new window)
  • vue3-element-admin (opens new window)
  • knife4j接口文档 (opens new window)
  • 有来商城

    • youlai-mall (opens new window)
    • mall-admin-web (opens new window)
    • mall-app (opens new window)
    • mall-pc (opens new window)
  • 其他

    • vue3-element-admin
问答
  • 后端

    • spring (opens new window)
    • mybatis-plus (opens new window)
    • knife4j (opens new window)
  • 前端

    • element-plus (opens new window)
    • vue3 (opens new window)
    • vite2 (opens new window)
  • 移动端

    • uni-app (opens new window)
💖支持
  • 博客园主题awescnb (opens new window)
Gitee (opens new window)
GitHub (opens new window)
  • 项目介绍
  • 项目启动

    • 后端

      • 极速启动
      • 本地启动
    • 前端

      • 前端启动
    • 移动端

      • H5启动
      • 小程序启动
  • 项目部署

    • Docker安装
    • MySQL部署
    • Redis部署
    • RabbitMQ部署
    • Nacos部署
    • Seata部署
    • Canal部署
    • MinIO部署
    • RocketMQ部署
  • 开发规范

    • Java规范
      • 命名规范
        • 包名
        • 类名
        • 实体类名
        • 动态排序字段
        • 分页参数
        • 方法命名
        • 泛型通配符
      • 方法规范
        • 禁止Service跨域调用Mapper
        • 方法体行数
    • API规范
    • Vue规范
    • CSS规范
    • Git规范
  • 指南
  • 开发规范
郝先瑞
2022-05-08
目录

Java规范

提示

有来技术团队内部开发规范

# 命名规范

# 包名

  • 统一使用单数形式,全小写

# 类名

  • 驼峰命名+首字母大写

# 实体类名

名称 规则
entity 映射数据库实体,和数据表字段完全一致
query 查询传参(查询参数大于5个建议封装query对象)
form 前端表单数据传参
dto RPC调用传参
vo 返回前端显示

dto、vo实体类名带后缀且全大写

  • 正例:UserDTO、UserVO

  • 反例:UserDto、UserVo

# 动态排序字段

名称 字段名 值
排序字段名 sortField 数据库对应列名
排序规则 sortRule asc:升序;desc:降序

# 分页参数

名称 字段名 默认值
排序字段名 pageNum 1
排序规则 pageSize 10

# 方法命名

以下命名涵盖了Controller、Service和Mapper层

作用域 示例
列表查询 listUsers
分页查询 listUserPages
单个查询 getUser/getUserDetail/getUserInfo ...
新增 saveUser/insertUser/addUser
修改 updateUser
删除 deleteUser

# 泛型通配符

名称 规则
E Element (在集合中使用,因为集合中存放的是元素)
T Type(Java类)
K Key(键)
V Value(值)
N Number(数值类型)
? 不确定的Java类型
S、U、V 2nd、3rd、4th types

# 方法规范

# 禁止Service跨域调用Mapper

  • 正例:UserService 直接调用 UserMapper
  • 反例:UserService 直接调用 DeptMapper

# 方法体行数

单个方法体不建议超过50行或一屏,超过建议封装

上次更新: 2022/07/08, 07:18:21
RocketMQ部署
API规范

← RocketMQ部署 API规范→

Theme by Vdoing | Copyright © -2-2022 有来技术团队
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式