接上一篇 写一个自己的脚手架——基础组件篇,本篇为基于基础组件搭建的单体应用框架介绍。单体应用框架提供常见的一些基础通用功能实现,目前主要为权限管理,提供前后端分离的后端 Spring Boot 项目与前端 Vue 项目。

本项目还在持续完善中。

后端 Spring Boot 项目

依赖基础组件项目:https://github.com/ronwxy/jboost-base

目前包含模块:

  1. jboost-auth: 权限管理,

    包含基本功能:

    • 登录、鉴权
    • 用户管理
    • 角色管理
    • 部门管理
    • 菜单管理
  2. jboost-bootstrap: 项目启动入口

    目前暂无其它功能

开发规范

  1. 模块命名使用 jboost-模块名,如 jboost-auth

  2. 模块根包命名使用 cn.jboost.boot.模块名 开头,如 cn.jboost.boot.auth

    jboost-bootstrap 模块根包名为 cn.jboost.boot,便于启动类扫描整个项目

  3. 各模块包含基本结构:

1
2
3
4
5
6
7
8
-- controller    
-- mapper
-- pojo
-- dto
-- converter
-- entity
-- query
-- service
  1. Service 层对于只有一个实现的,无需定义 Interface

  2. 包名、类名都使用单数形式,如 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 服务),登录页效果如图

jboost-admin-login

及基本的系统管理功能,如下图所示

jboost-admin-main

项目的运行及打包可参考项目的 README 文档。

总结

单体应用框架包含一个系统常用的基础功能,基于此可进行其它业务模块开发,提高开发效率。本文对单体应用框架的前后端项目进行了简单介绍,目前项目只包含基本的权限管理功能,其它基础功能待持续完善。因水平有限,疏漏、错误之处难免,欢迎指正。

单体应用框架项目源码:

如对你有帮助,可以大方地 star 一下。

评论