接上一篇 写一个自己的脚手架——基础组件篇,本篇为基于基础组件搭建的单体应用框架介绍。单体应用框架提供常见的一些基础通用功能实现,目前主要为权限管理,提供前后端分离的后端 Spring Boot 项目与前端 Vue 项目。
本项目还在持续完善中。
后端 Spring Boot 项目
依赖基础组件项目:https://github.com/ronwxy/jboost-base
目前包含模块:
jboost-auth: 权限管理,
包含基本功能:
- 登录、鉴权
- 用户管理
- 角色管理
- 部门管理
- 菜单管理
jboost-bootstrap: 项目启动入口
目前暂无其它功能
开发规范
模块命名使用
jboost-模块名
,如jboost-auth
模块根包命名使用
cn.jboost.boot.模块名
开头,如cn.jboost.boot.auth
但
jboost-bootstrap
模块根包名为cn.jboost.boot
,便于启动类扫描整个项目各模块包含基本结构:
1 | -- controller |
Service 层对于只有一个实现的,无需定义 Interface
包名、类名都使用单数形式,如 User, 而不是 Users
以上代码结构可使用 jboost-base 中的 jboost-generator 生成,生成配置参考项目 resource/generator.yaml
中的注释说明。
前端 Vue 项目
基于 vue-admin-template 搭建
vue-admin-template 是一个极简的 vue admin 管理后台。它只包含了 Element UI & axios & iconfont & permission control & lint,这些搭建后台必要的东西。
项目包含基本的登录,含用户名登录与手机验证码登录(需自行配置 sms 服务),登录页效果如图
及基本的系统管理功能,如下图所示
项目的运行及打包可参考项目的 README 文档。
总结
单体应用框架包含一个系统常用的基础功能,基于此可进行其它业务模块开发,提高开发效率。本文对单体应用框架的前后端项目进行了简单介绍,目前项目只包含基本的权限管理功能,其它基础功能待持续完善。因水平有限,疏漏、错误之处难免,欢迎指正。
单体应用框架项目源码:
如对你有帮助,可以大方地 star 一下。