【Spring Cloud + Vue 有来商城】研发小组开发规范手册

简介: 【Spring Cloud + Vue 有来商城】研发小组开发规范手册

项目演示

感兴趣的朋友可以给个star哦,项目源码请点击:youlai-mall

微信图片_20230709223136.gif

微信图片_20230709223151.gif

后端


Spring Cloud实战 | 第一篇:Windows搭建Nacos服务

Spring Cloud实战 | 第二篇:Spring Cloud整合Nacos实现注册中心

Spring Cloud实战 | 第三篇:Spring Cloud整合Nacos实现配置中心

Spring Cloud实战 | 第四篇:Spring Cloud整合Gateway实现API网关

Spring Cloud实战 | 第五篇:Spring Cloud整合OpenFeign实现微服务之间的调用

Spring Cloud实战 | 第六篇:Spring Cloud Gateway+Spring Security OAuth2+JWT实现微服务统一认证授权

Spring Cloud实战 | 最终篇:Spring Cloud Gateway+Spring Security OAuth2集成统一认证授权平台下实现注销使JWT失效方案

管理前端


vue-element-admin实战 | 第一篇: 移除mock接入后台,搭建有来商城youlai-mall前后端分离管理平台

vue-element-admin实战 | 第二篇: 最小改动接入后台实现根据权限动态加载菜单

微信小程序


vue+uniapp商城实战 | 第一篇:【有来小店】微信小程序快速开发接入Spring Cloud OAuth2认证中心完成授权登录

一. 代码规范

1. Service/DAO 层方法命名规约

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


2) 获取多个对象的方法用 list 做前缀,复数结尾,如:listObjects。


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


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


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


摘自:


Java开发手册【泰山版】

2. SQL语句规范

1)SQL 语句中表的别名前加 as,并且以 t1、t2、t3、…的顺序依次命名。


select t1.name from table_first as t1, table_second as t2 where t1.id=t2.id;

1

摘自:


Java开发手册【泰山版】

二. 接口规范

项目接口是基于REST构建的API也就是RESTful架构风格设计。


在RESTful架构中,每个URL代表一种资源,所以不能有动词,只能有名词,而且所用的名词往往与数据库的表格名对应。一般来说,数据库中的表都是同种记录的"集合",所以API中的名词也应该使用复数。


最佳案例


https://youlai.store/users GET 获取所有用户信息

https://youlai.store/users/1 GET 获取标识为1用户信息

https://youlai.store/users/1 DELETE 删除标识为1用户信息

https://youlai.store/users/1 Patch 更新标识为1用户部分信息,包含在body中

https://youlai.store/users POST 添加新的用户

https://youlai.store/users/me GET 获取当前用户信息

如果记录数量很多,服务器不可能都将它们返回给用户。API应该提供参数,过滤返回结果。


?limit=10:指定返回记录的数量

?offset=10:指定返回记录的开始位置。

?page=2&per_page=100:指定第几页,以及每页的记录数。

?sortby=name&order=asc:指定返回结果按照哪个属性排序,以及排序顺序。

?animal_type_id=1:指定筛选条件

参考:


RESTful API 设计指南

三. Git规范

1. Commit message的格式规范

Commit message 包括三个字段:type(必需)、scope(可选)和subject(必需)。


<type>(<scope>): <subject>

1

1).type


type用于说明 commit 的类别,规范使用以下标识。


feat:新功能(feature)

fix:修补bug

docs:文档(documentation)

style: 格式(不影响代码运行的变动)

refactor:重构(即不是新增功能,也不是修改bug的代码变动)

test:增加测试

chore:构建过程或辅助工具的变动

revert:回滚到上一个版本

merge:代码合并

sync:同步主线或分支的Bug

2).scope


scope用于说明 commit 影响的范围,比如数据层、控制层、视图层等等,视项目不同而不同。


3). subject


subject是 commit 目的的简短描述,不超过50个字符。


最佳案例


git commit -m docs(README.md):分支修改项目说明文档

1

格式化Commit message的好处


1). 快速预览历史


git log <last tag> HEAD --pretty=format:%s

1

2). 快速过滤查找


git log <last release> HEAD --grep feature

1

3). commit生成Change log


Change Log 是发布新版本时,用来说明与上一个版本差异的文。


参考:


Commit message 和 Change log 编写指南

2. 分支开发主干发布模式

禁止在主干直接修改代码,需在开发分支开发并在测试环境测试通过之后由相关人员同步到主干


最佳案例


[master] > git checkout dev

[dev] > git add .

[dev] > git commit -m docs(README.md):分支修改项目说明文档

[dev] > git push origin dev

[dev] > git checkout master

[master] > git merge dev

[master] > git add .

[master] > git commit -m sync:主干同步分支

[master] > git push origin master


四. 错误码规范

有来商城项目错误码需参照 Java开发手册【泰山版】 的错误码列表


Java开发手册【泰山版】

微信图片_20230709223208.png



有来商城/youlai-mall源码

微信图片_20230709223214.png


五.数据表设计规范

1. 表必备三个字段: id, gmt_create , gmt_modified

其中 id 必为主键,类型为 unsigned bigint、单表时自增、步长为 1。gmt_create,

gmt_modified 的类型均为 date_time 类型,前者现在时表示主动创建,后者过去分词表示被

动更新。


摘自:


Java开发手册【泰山版】

项目源码

项目名称 github gitee

后台 youlai-mall youlai-mall

管理前端 youlai-mall-admin youlai-mall-admin

微信小程序 youlai-mall-weapp youlai-mall-weapp


相关文章
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
111 62
|
5天前
|
存储 JavaScript 前端开发
基于 SpringBoot 和 Vue 开发校园点餐订餐外卖跑腿Java源码
一个非常实用的校园外卖系统,基于 SpringBoot 和 Vue 的开发。这一系统源于黑马的外卖案例项目 经过站长的进一步改进和优化,提供了更丰富的功能和更高的可用性。 这个项目的架构设计非常有趣。虽然它采用了SpringBoot和Vue的组合,但并不是一个完全分离的项目。 前端视图通过JS的方式引入了Vue和Element UI,既能利用Vue的快速开发优势,
45 13
|
12天前
|
JavaScript 安全 Java
java版药品不良反应智能监测系统源码,采用SpringBoot、Vue、MySQL技术开发
基于B/S架构,采用Java、SpringBoot、Vue、MySQL等技术自主研发的ADR智能监测系统,适用于三甲医院,支持二次开发。该系统能自动监测全院患者药物不良反应,通过移动端和PC端实时反馈,提升用药安全。系统涵盖规则管理、监测报告、系统管理三大模块,确保精准、高效地处理ADR事件。
|
17天前
|
消息中间件 监控 Java
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
31 6
|
17天前
|
Java 关系型数据库 MySQL
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + MySQL应用程序部署到Pivotal Cloud Foundry (PCF)
37 5
|
17天前
|
缓存 监控 Java
如何将Spring Boot应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot应用程序部署到Pivotal Cloud Foundry (PCF)
28 5
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,帮助开发者提高开发效率和应用的可维护性。
78 2
|
1月前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
1月前
|
JavaScript NoSQL Java
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
43 0
|
3月前
|
SpringCloudAlibaba API 开发者
新版-SpringCloud+SpringCloud Alibaba
新版-SpringCloud+SpringCloud Alibaba