README.md

    Easyadmin

    有用的话请鼓励️下作者,右上角️watch、star、fork三连点🙏🙏🙏一波

    🌵介绍

    基于 SpringBoot2+MybatiPlus+LayUI+Snaker+Mysql技术,可前后端分离开发或者 前后端一体式开发 ,一款简单轻量级后台管理系统脚手架内置权限管理、工作流引擎、应用监控、Api文档、行为监控、前后端代码生成、动态定时任务、在线WebLog等 。可以理解为 轻量、升级版的若依/RuoYi

    相比于若依优势如下

    • 若依有的功能EasyAdmin都有,但是使用简洁、有效的轻量级实现,更少的依赖,更低的学习成本
    • 若依缺乏的常用功能EasyAdmin也添加了,都是从我实际接触的项目提炼而来,例如:工作流、在线WebLog、应用监控、NginxUI等
    • EasyAdmin具有更全面的配套文档,这个项目也是由配套专栏《从零搭建开发脚手架》整理而来

    这里没有说若依不好,若依是非常优秀的开源项目,我也是若依项目的使用者之一,EasyAdmin是我根据工作中很多实际项目锤炼出的一套非常适合中小型企业开发的框架,简单来说EasyAdmin是杀鸡刀若依是杀牛刀,用户名可以根据具体的需求场景进行选择,莫喷、莫喷、莫喷。

    愿景是打造一款简单轻量级后台管理系统脚手架。目前使用的技术都是相对较轻量级、上手很容易的技术。例如:Spring Boothutool-allmybatis-plusknife4jsa-tokenjavamelodysnakerflow 等。后续的发展方向也是把目标对准中小型项目提炼简单高效架构

    适合场景:💋学生毕设学习、💋前后端项目练手、💋私活快速开发、💋中小型企业脚手架、💋Spring Boot深度扩展学习

    项目架构灵活多变开发模式支持前后端分离不分离模式,部署模式支持多种方式Fat.jar模式Nginx反向代理Nginx正向代理

    项目地址https://gitee.com/lakernote/easy-admin

    📕配套技术文章👉从零搭建开发脚手架

    本开源项目,也是从我的专栏《从零搭建开发脚手架》整理而来

    📗配套视频地址👉B站欢迎一键三连

    视频正在实时更新中,欢迎大家批评指导

    🌰 在线演示

    🌽地址http://101.132.189.23:81/admin/login.html

    低配机轻点拍穷比

    • 用户名/密码laker/lakernote(老李提交请假申请)

    • 用户名/密码yang/lakernote(杨总审批)

    • 用户名/密码zhang/lakernote(大于2天张总审批)

    当前处于开发阶段 ,由于我前端技术小白水平,开发进度较慢,还有很多功能未开发完成,有想一起开发的小伙伴,请加微信️【lakernote】联系我。

    🌴 功能列表

    功能 状态 相关文档
    用户管理、部门管理、菜单管理、角色管理 🐾
    基于RBAC角色的访问控制 🐾 认证授权 sa-token
    基于knife4j-Api文档集成 🐾 Knife4j替换swagger
    基于javamelody应用监控 🐾 Javamelody-应用程序监控
    基于Snakerflow的工作流引擎 🐾 轻量级工作流引擎Snakerflow集成
    自定义注解+AOP用户行为分析 🐾 SpringBoot自定义注解+AOP实现用户行为监控
    基于Freemrker的前后端代码一键生成 🐾
    基于mybatis插件的数据权限控制 🐾 基于Mybatis-Plus的数据权限实现
    基于SpringTask定时任务(支持动态CRUD任务) 🐾 基于Spring Task实现动态管理任务
    在线WebLog、动态修改日志级别 🐾 在线WebLog、动态修改日志级别
    保证服务的幂等性和防止重复请求 🐾 相关文档
    前端路由守卫
    前端按钮控制

    🌲软件架构

    其他相关文章

    🌳技术选型

    前端

    底座是Layui

    这里重点感谢Layui、Pear-Admin-Layui、layuimini,我一个前端小白,学习一周就能撸出来EasyAdmin了。

    后端

    • 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

    windows系统会自动在浏览器打开首页。超级管理员用户名密码:admin/ilovelaker

    前端

    有2种方式供选择

    方式一、Spring Boot虚拟磁盘模式

    运行EasyAdminApplication.java会自动在浏览器打开首页。属于一体化开发模式

    方式二、纯静态模式

    纯静态的,可直接在浏览器运行,属于前后端分离开发模式

    1.修改配置web/admin/config/pear.config.yml

    ## 配置服务端地址
    admin:
      server: http://localhost:8080

    2.在web/admin/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

    登录 首页
    在线用户 待办任务
    已办任务 流程图
    行为监控 应用监控
    NginxUI 请假申请
    定时任务 定时任务日志
    基本资料 修改密码
    用户管理 角色管理
    权限管理 接口文档
    流程定义 WebLog

    🌺部署教程

    整体部署规划结构如下:

    服务端

    先使用mvn clean package命令进行打包成Jar.

    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-1.0.0.jar &

    由于验证码涉及到java安全协议,建议使用脚本启动 sh run.sh start

    前端

    首先修改配置web/admin/config/pear.config.yml,填写你自己服务器实际ip、port

    ## 配置服务端地址
    admin:
      server: http://localhost:8080

    按照相对位置放即可(或者自己弄个nginx丢进去)

    easy-admin.jar
    application.yml
    run.sh
    web
    --admin
    ----admin
    ----compoment
    ----config
    ----view
    ----index.html
    ----login.html
    校验

    浏览器访问http://ip:port/admin

    如果部署失败请查看Easyadmin部署及部署常见问题解决或者联系作者

    ️联系方式

    个人微信: lakernote(进群加我拉你)


    微信公众号 : Java大厂面试官

    项目简介

    基于SpringBoot2+MybatiPlus+LayUI+Snaker+Mysql+前后端分离或一体的简单、轻量级的后台管理系统脚手架。内置权限管理、工作流引擎等

    发行版本

    当前项目没有发行版本

    贡献者 1

    lakernote @abu935009066

    开发语言

    • JavaScript 90.0 %
    • CSS 4.4 %
    • Java 2.9 %
    • HTML 2.5 %
    • FreeMarker 0.1 %