原本是神界将军飞蓬的佩剑,因在新仙界与重楼战败而流落人间。镇妖剑具有震慑妖魔的神力,被蜀山仙剑派奉为镇派之宝。
zhenyaojian 是一个轻量级权限管理系统,基于 Spring Boot、Spring Security 和 MyBatis-Plus
构建,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。
- 轻量级:使用较新主流技术栈,社区资源丰富。
 - 模块化:模块化的结构设计,可轻松扩展。
 - 工程化:友好的代码结构与注释,方便阅读学习及二次开发。
 - 前后端分离:后端提供标准 
RESTful API,使用JWT鉴权。 - 容器化:提供 
Docker镜像,并实时更新推送dockerhub,可一键进行容器化部署。 - 可观测性:集成 
Spring Boot Admin观测当前应用。 
基于 RBAC 模型实现了权限管理的核心功能,包含用户管理、角色管理及菜单管理。具体功能点如下图所示:
zhenyaojian
├── docs 项目文档
├── zhenyaojian-admin 管理后台模块
│ └── src/main
│      ├── java/io/github/llnancy/zhenyaojian/admin/web/controller 控制器
│      └── resources 配置文件
├── zhenyaojian-framework 核心框架模块
│ └── src/main
│     │ ├── java/io/github/llnancy/zhenyaojian/framework
│     │ │                     ├── advice 全局异常处理
│     │ │                     ├── config 配置文件
│     │ │                     │ └── property 属性配置类
│     │ │                     ├── enums 枚举
│     │ │                     ├── exception 自定义异常
│     │ │                     ├── mapstruct 对象转化映射器
│     │ │                     ├── model 业务模型
│     │ │                     │ ├── request 请求对象
│     │ │                     │ └── response 响应对象
│     │ │                     ├── security Spring Security 相关
│     │ │                     │ ├── filter JWT 认证过滤器
│     │ │                     │ └── handler 权限异常处理器、认证异常处理器及退出登录处理器
│     │ │                     ├── service 业务实现层
│     │ │                     │ └── jwt JWT 模块及实现
│     │ │                     └── util 系统工具类
│     │ └── resources 存放 JWT 公私钥文件
│     └── test 测试模块
└── zhenyaojian-system 核心系统模块
    └── src/main
         ├── java/io/github/llnancy/zhenyaojian/system
         │                     ├── generate MyBatis-Plus 代码生成器
         │                     └── repository
         │                         ├── entity 领域模型
         │                         └── mapper MyBatis Mapper
         └── resources
             ├── mapper MyBatis Mapper XML
             ├── scripts 数据库脚本
             │      ├── initdb.sql 初始化数据脚本
             │      └── schema.sql 初始化表结构脚本
             └── templates 代码生成模板
| 技术 | 说明 | 官网 | 
|---|---|---|
| Spring Boot | 基础服务框架 | https://spring.io/projects/spring-boot | 
| Spring Security | 认证和授权框架 | https://spring.io/projects/spring-security | 
| mojian | 魔剑 - 业务开发工具集 | https://github.com/llnancy/mojian | 
| MyBatis-Plus | ORM 框架:对 MyBatis 增强 | https://baomidou.com | 
| MP-Generate | 基于 MyBatis-Plus 的代码生成器 | https://baomidou.com/pages/779a6e/ | 
| JWT | JWT 登录认证 | https://github.com/jwtk/jjwt | 
| Lombok | 简化 Bean 对象 | https://projectlombok.org | 
| Mapstruct | Java Bean 对象转化映射器 | https://mapstruct.org | 
| Hutool | 小而全的 Java 工具类库 | https://hutool.cn | 
| Guava | Google 核心 Java 类库 | https://github.com/google/guava | 
| Spring Boot Admin | Spring Boot 服务监控 | https://github.com/codecentric/spring-boot-admin | 
mojian项目是本人开发的一个专注于业务开发的工具集,目前已发布至中央仓库,欢迎star。
前端项目代码仓库:https://github.com/llnancy/zhenyaojian-ui
| 技术 | 说明 | 官网 | 
|---|---|---|
| Vue2 | 基础前端框架 | https://v2.vuejs.org | 
| Vue-Router | 路由框架 | https://router.vuejs.org | 
| Vuex | 全局状态管理框架 | https://router.vuejs.org | 
| Axios | 基于 Promise 的 HTTP 客户端 | https://axios-http.com | 
| NProgress | 页面加载进度条组件 | https://github.com/rstacruz/nprogress | 
| Ant-Design-Vue | UI 组件库 | https://1x.antdv.com/docs/vue/introduce-cn | 
| Vue Antd Admin | Ant Design Pro 的 Vue 实现 | https://github.com/iczer/vue-antd-admin | 
- JDK8+
 - MySQL5.7+
 - Maven3.6+
 
在线体验地址:https://lilu.org.cn/zhenyaojian/
账号密码:llnancy/123456
git clone https://github.com/llnancy/zhenyaojian.gitIDEA导入项目- 连接 
MySQL执行zhenyaojian-system/src/main/resources/scripts/schema.sql数据库初始化脚本 - 修改 
zhenyaojian-admin/src/main/resources/application-dev.yml配置文件,更新MySQL连接地址、用户名及密码等 - 运行 
io.github.llnancy.zhenyaojian.admin.ZhenYaoJianApplication.main方法即可启动后端服务 - 默认初始账号密码为 
admin/123456 
需自行修改 docker-compose.yml 文件中的数据库连接地址、用户名及密码等配置。一键启动命令如下:
docker-compose -f docker-compose.yml up -d- 感谢 https://github.com/iczer/vue-antd-admin 提供的前端模板
 
我们非常欢迎您的贡献,您可以通过以下方式和我们一起共建:
- 在您的公司或个人项目中使用 zhenyaojian。
 - 通过 Issue 报告 
Bug或进行提问。 - 提交 Pull Request 优化现有代码。
 
Copyright (c) 2022-present llnancy
如果该项目对您有所帮助,可以请作者喝一杯咖啡。
| 支付宝 | 微信 | 
|---|---|
![]()  | 
![]()  | 







