easy-admin
介绍
easy❤️,easy❤️,easy❤️,打造一款简单、轻量级的后台管理系统脚手架⛳⛳⛳。目前使用的技术都是相对较轻量级、上手很容易的技术。例如:Spring Boot、hutool-all、mybatis-plus 、knife4j 、sa-token、javamelody 、snakerflow 等。后续的发展方向也是把目标对准中小型项目,提炼简单高效架构。
适合场景:💋学生学习、💋前后端项目练手、💋私活快速开发、💋中小型企业脚手架、💋Spring Boot深度扩展学习等
项目架构灵活多变,内置前后端代码生成,开发模式支持前后端分离和不分离模式,部署模式支持多种方式:Fat.jar模式、Nginx反向代理、Nginx正向代理。
配套技术文章:👉从零搭建开发脚手架
本开源项目,也是从我的专栏《从零搭建开发脚手架》整理而来
功能列表
| 功能 | 状态 | 相关文档 |
|---|---|---|
| 用户管理、部门管理、菜单管理、角色管理🐾 | ✅ | |
| 基于RBAC角色的访问控制🐾 | ✅ | 认证授权 sa-token |
| 基于knife4j-Api文档集成🐾 | ✅ | Knife4j替换swagger |
| 基于javamelody应用监控🐾 | ✅ | Javamelody-应用程序监控 |
| 基于Snakerflow的工作流引擎🐾 | ✅ | 轻量级工作流引擎Snakerflow集成 |
| 自定义注解+AOP用户行为分析🐾 | ✅ | SpringBoot自定义注解+AOP实现用户行为监控 |
| 基于Freemrker的前后端代码一键生成🐾 | ✅ | |
| 基于mybatis插件的数据权限控制🐾 | ❌ | 基于Mybatis-Plus的数据权限实现 |
| 基于SpringTask定时任务(支持动态CRUD任务) 🐾 | ✅ | 基于Spring Task实现动态管理任务 |
| 在线WebLog、动态修改日志级别🐾 | ✅ | 在线WebLog、动态修改日志级别 |
在线演示
地址:http://101.132.189.23/admin/login.html
- 用户名/密码:laker/lakernote
- 用户名/密码:yang/lakernote
- 用户名/密码:zhang/lakernote
当前处于开发阶段,由于我前端技术小白水平,开发进度较慢,还有很多功能未开发完成,有想一起开发的小伙伴,请加微信☎️【lakernote】联系我。
软件架构
其他相关文章
- 从零搭建开发脚手架 HttpServletRequest多次读取异常,仅能读取一次
- 从零搭建开发脚手架 Spring Boot 输入参数校验多种方式整理
- 从零搭建开发脚手架 实现在线WebLog、动态修改日志级别
- 跨站请求伪造(CSRF)示例、原理及其防御措施
- 从零搭建开发脚手架 Spring Boot集成Mybatis-plus之一
- 从零搭建开发脚手架 Spring Boot集成Flyway实现数据库版本管理
- Spring Boot Tomcat临时目录tmp抛错误异常
技术选型
前端:
底座是Layui
后端
- Spring Boot 2.3.7.RELEASE
- hutool-all 工具类
- lombok
- mybatis-plus 3.4.2
- druid 数据库连接池
- mysql 数据库
- knife4j Api文档
- sa-token 认证授权
- javamelody 应用监控
- easyexcel Excel处理
- mail 邮箱
- snakerflow 国产工作流引擎
开发教程
服务端
1.执行sql/easy-admin.sql
2.修改src/main/resource/application.yaml
server:
port: 8080
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/laker?serverTimezone=GMT%2B8&characterEncoding=utf8&useSSL=false
3.运行EasyAdminApplication.java
前端
2种方式部署
一、Spring Boot虚拟磁盘模式
运行EasyAdminApplication.java会自动在浏览器打开首页。
二、纯静态模式
纯静态的,可直接在浏览器运行,修改配置web/admin/config/pear.config.yml
## 配置服务端地址
admin:
server: http://localhost:8080
直接在浏览器访问index.html,如下图直接就可以访问了
代码生成
执行CodeGenerator.java,按照提示输入即可,以下为示例和解释
--------生成文件输出目录---------
D:\JT\easy-admin/src/main/java
-----------------
请输入模块名:
module.ext // 仅仅会影响生成java代码路径D:\JT\easy-admin/src/main/java/com/laker/admin/module/ext
请输入表名,多个英文逗号分割:
ext_log // 影响前端代码生成路径D:\JT\easy-admin/web/admin/view/ext/log
// 影响接口定义 http://xx:port/ext/log
生成好后,直接在菜单权限处,配置访问路径view/ext/log.html即可访问新建模块
规约
数据库表命名:模块名+实体,例如:ext_log
数据库字段:主键定义为bigint,且命名为:业务Id,例如:logId
项目截图
在线WebLog
登录页
主页菜单
流程定义
应用监控
接口文档
部署教程
整体部署包位置如下:
服务端
mvn clean package 打包
1.执行easy-admin.sql
2.修改application.yaml
server:
port: 8080
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/laker?serverTimezone=GMT%2B8&characterEncoding=utf8&useSSL=false
3.启动
nohup java -jar easy-admin.jar &
前端
按照相对位置放即可(或者自己弄个nginx丢进去)
easy-admin.jar
application.yml
web
--admin
----admin
----compoment
----config
----view
----index.html
----login.html
浏览器访问http://ip:port/admin
☎️联系方式☎️
微信公众号 : Java大厂面试官 , 个人微信: lakernote