Anthony Parker
9dd0592445
|
7 months ago | |
---|---|---|
db-file | 1 year ago | |
opsli-api | 2 years ago | |
opsli-base-support | 7 months ago | |
opsli-modulars | 1 year ago | |
opsli-plugins | 2 years ago | |
opsli-starter | 1 year ago | |
.gitattributes | 4 years ago | |
.gitignore | 3 years ago | |
Dockerfile | 3 years ago | |
LICENSE | 2 years ago | |
README.md | 1 year ago | |
docker-compose-server.yml | 2 years ago | |
docker-compose.yml | 3 years ago | |
pom.xml | 1 year ago | |
push.bat | 3 years ago | |
push.sh | 3 years ago |
README.md
OPSLI 快速开发平台 (v2.0)
关于
OPSLI 是一款的低代码快速平台,零代码开发,致力于做更简洁的后台管理系统!
OPSLI 快速开发平台基于springboot、vue、element-ui ,项目采用前后端分离架构,热插拔式业务模块与插件扩展性高 ,代码简洁,功能丰富,开箱即用,帮助Java项目解决70%的重复工作,让开发更关注业务逻辑,既能快速提高效率,节省研发成本,同时又不失灵活性!
地址
- 官方网站: https://opsli.com
- 演示地址: https://demo.opsli.bedebug.com
- 文档地址: https://wiki.opsli.bedebug.com
- 作者博客: https://www.bedebug.com
- 问题反馈: https://github.com/hiparker/opsli-boot/issues
- 交流Q群: 724850675 (1群)
技术选型
前端
- vue-admin-beautiful
后端版本
单机版
名称 | 版本号 | 名称 | 版本号 | |
---|---|---|---|---|
jdk版本 | 1.8 | springboot版本 | 2.7.10 | |
mybatis-plus版本 | 3.5.2 | pagehelper版本 | 1.4.6 | |
druid版本 | 1.1.17 | dynamic版本 | 2.5.4 | |
fastjson版本 | 1.2.83 | transmittable版本 | 2.12.5 | |
ehcache版本 | 3.9.0 | easyexcel版本 | 2.2.6 | |
captcha版本 | 1.6.2 | guava版本 | 30.0-android | |
enjoy版本 | 4.9.06 | hutool版本 | 5.7.14 |
在线演示
- 地址:https://demo.opsli.bedebug.com
- 账号:demo
- 密码:Aa123456
- 数据库监控/系统接口
- 账号: admin
- 密码: 123456
功能特点
高扩展登录:基于Spring Security 改造的高扩展接口,便于后期支持邮箱、手机、账号密码、第三方等登录
高扩展API管控:自动支持v1-vn 多版本、多终端接口兼容,业务扩展不打架
代码生成:采用自研的代码生成器+Jfinal Enjoy 模板引擎,在线可视化生成前后端代码,可自定义生成代码模版
多租户功能:采用自研完善的多租户SaaS功能,提供行业SaaS全套解决方案
登录安全:登录数据采用双向加密模式,后台一键式切换加密秘钥,保障登录用户隐私安全
数据安全:支持自定义注解,一键式加密数据
缓存安全:采用自研的 Security Cache,解决缓存穿透、击穿、雪崩问题
身份安全:修改邮箱、手机号或忘记密码时,有独立的身份认证鉴权
在线文档:通过接入Knife4j,实现在线API文档的查看与调试;
业务分离:采用前后端分离的框架设计,前端采用vue-admin-beautiful(开源版本 基于element-ui)
扩展登录
系统预览
代码结构
.
├── opsli-api 对外API 控制中心
│ ├── src
│ │ ├── main
│ │ │ ├── java
│ │ │ │ └── org
│ │ │ │ └── opsli
│ │ │ │ └── api
│ │ │ │ ├── base API 基础
│ │ │ │ ├── web API Web层
│ │ │ │ └── warpper API 封装对象
│ │ │ │
├── opsli-base-support 基础模块
│ ├── opsli-common 基础 - 公共模块
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── org
│ │ │ │ │ └── opsli
│ │ │ │ │ └── common
│ │ │ │ │ ├── annotation 公共模块 - 注解类
│ │ │ │ │ ├── api 公共模块 - Result内部文件(暂时无用)
│ │ │ │ │ ├── base 公共模块 - 基础类
│ │ │ │ │ ├── constants 公共模块 - 常量
│ │ │ │ │ ├── enums 公共模块 - Enums
│ │ │ │ │ ├── exception 公共模块 - 异常类
│ │ │ │ │ ├── msg 公共模块 - 信息
│ │ │ │ │ ├── thread 公共模块 - 线程相关
│ │ │ │ │ └── utils 公共模块 - 工具类
│ │ │ │ │
│ └── opsli-core 基础 - 核心模块
│ ├── src
│ │ ├── main
│ │ │ ├── java
│ │ │ │ └── org
│ │ │ │ └── opsli
│ │ │ │ ├── core 核心
│ │ │ │ │ ├── api 核心模块 - API接口相关(登录Token缓存)
│ │ │ │ │ ├── autoconfigure 核心模块 - 自动配置
│ │ │ │ │ │ ├── conf 自动装配
│ │ │ │ │ │ └── properties 配置文件注入
│ │ │ │ │ ├── base 核心模块 - 基础类 Entity Service
│ │ │ │ │ ├── cache 核心模块 - 缓存处理
│ │ │ │ │ ├── eventbus 核心模块 - 消息事件
│ │ │ │ │ ├── filters 核心模块 - 过滤器
│ │ │ │ │ │ ├── aspect AOP切面
│ │ │ │ │ │ └── interceptor Spring拦截器
│ │ │ │ │ ├── general 核心模块 - 其他处理器
│ │ │ │ │ ├── handler 核心模块 - 异常拦截处理
│ │ │ │ │ ├── holder 核心模块 - 上下文数据
│ │ │ │ │ ├── listener 核心模块 - 系统监听器
│ │ │ │ │ ├── log 核心模块 - 日志处理
│ │ │ │ │ ├── msg 核心模块 - 信息
│ │ │ │ │ ├── options 核心模块 - 系统参数
│ │ │ │ │ ├── persistence 核心模块 - 查询条件构造器
│ │ │ │ │ │ └── querybuilder
│ │ │ │ │ │ └── chain 核心模块 - 查询条件构造器 - 责任链(例: 租户处理)
│ │ │ │ │ ├── security 核心模块 - 权限验证
│ │ │ │ │ │ ├── filter 拦截器
│ │ │ │ │ │ └── service 获取用户的Service
│ │ │ │ │ └── utils 核心模块 - 工具类
│ │ │ │ └── pligins 插件
│ │ │ │ └── oss 插件模块 - OSS文件存储
│ │ │ │
├── opsli-modulars 业务
│ ├── opsli-modulars-generator 代码生成器
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── org
│ │ │ │ │ └── opsli
│ │ │ │ │ ├──core 代码生成器 - 核心包
│ │ │ │ │ │ └── generator
│ │ │ │ │ │ ├── enums 代码生成器 - 枚举类
│ │ │ │ │ │ ├── exception 代码生成器 - 异常类
│ │ │ │ │ │ ├── msg 代码生成器 - 信息类
│ │ │ │ │ │ ├── strategy 代码生成器 - 策略类
│ │ │ │ │ │ └── utils 代码生成器 - 工具包
│ │ │ │ │ │
│ │ │ │ │ └── modulars 代码生成器 - 业务包
│ │ │ │ │ └── generator
│ │ │ │ │ ├── column 代码生成器 - 表结构
│ │ │ │ │ ├── createrlogs 代码生成器 - 生成记录
│ │ │ │ │ ├── general 代码生成器 - 同步数据库执行器
│ │ │ │ │ ├── importable 代码生成器 - 数据库导入
│ │ │ │ │ └── table 代码生成器 - 表管理
│ │ │ │ │
│ └── opsli-modulars-system 系统模块
│ ├── src
│ │ ├── main
│ │ │ ├── java
│ │ │ │ └── org
│ │ │ │ └── opsli
│ │ │ │ └── modulars
│ │ │ │ ├── system 系统模块 - 系统配置
│ │ │ │ │ ├── area 系统模块 - 地域
│ │ │ │ │ ├── dict 系统模块 - 字典
│ │ │ │ │ ├── login 系统模块 - 登录
│ │ │ │ │ │ ├── dto 系统模块 - 登录 - DTO
│ │ │ │ │ │ ├── event 系统模块 - 登录 - 消息事件
│ │ │ │ │ │ ├── handler 系统模块 - 登录 - 前置、成功、失败处理器
│ │ │ │ │ │ ├── vo 系统模块 - 登录 - 返回数据
│ │ │ │ │ │ └──web 系统模块 - 登录 - 接口控制器
│ │ │ │ │ ├── logs 系统模块 - 日志
│ │ │ │ │ ├── menu 系统模块 - 菜单
│ │ │ │ │ ├── monitor 系统模块 - 系统监控
│ │ │ │ │ ├── options 系统模块 - 参数配置
│ │ │ │ │ ├── org 系统模块 - 组织机构
│ │ │ │ │ ├── role 系统模块 - 角色
│ │ │ │ │ ├── tenant 系统模块 - 租户
│ │ │ │ │ └── user 系统模块 - 用户
│ │ │ │ │
│ │ │ │ └── tools 工具包
│ │ │ │ ├── api 工具包 - 版本控制API测试类
│ │ │ │ ├── common 工具包 - 公共服务
│ │ │ │ ├── email 工具包 - 邮件包
│ │ │ │ ├── oss 工具包 - 文件存储
│ │ │ │ └── searchhis 工具包 - 搜索历史
│ │ │ │
├── opsli-plugins 插件
│ ├── opsli-plugins-crypto 加解密插件包
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── org
│ │ │ │ │ └── opsli
│ │ │ │ │ └── plugins
│ │ │ │ │ └── crypto
│ │ │ │ │ ├── enums 加解密插件包 - 枚举
│ │ │ │ │ ├── exception 加解密插件包 - 异常处理类
│ │ │ │ │ ├── model 加解密插件包 - 模型
│ │ │ │ │ ├── msg 加解密插件包 - 异常消息
│ │ │ │ │ ├── spring 加解密插件包 - Spring集成相关内容
│ │ │ │ │ └── strategy 加解密插件包 - 加解密策略 包含 对称、非对称等等
│ │ │ │ │
│ ├── opsli-plugins-ehcache Ehcache缓存插件 (二级缓存)
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── org
│ │ │ │ │ └── opsli
│ │ │ │ │ └── plugins
│ │ │ │ │ └── cache
│ │ │ │ │ ├── conf Ehcache缓存插件 - 自动装配
│ │ │ │ │ ├── msg Ehcache缓存插件 - 信息
│ │ │ │ │ └── service Ehcache缓存插件 - 服务
│ │ │ │ │
│ ├── opsli-plugins-email 邮件插件包
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── org
│ │ │ │ │ └── opsli
│ │ │ │ │ └── plugins
│ │ │ │ │ └── email
│ │ │ │ │ ├── conf 邮件插件包 - 配置文件
│ │ │ │ │ ├── exception 邮件插件包 - 异常处理类
│ │ │ │ │ ├── msg 邮件插件包 - 异常消息
│ │ │ │ │ ├── service 邮件插件包 - 处理类
│ │ │ │ │ └── wrapper 邮件插件包 - 包装器
│ │ │ │ │
│ ├── opsli-plugins-excel Excel插件
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── org
│ │ │ │ │ └── opsli
│ │ │ │ │ └── plugins
│ │ │ │ │ └── excel
│ │ │ │ │ ├── annotation Excel插件 - 注解
│ │ │ │ │ ├── exception Excel插件 - 异常类
│ │ │ │ │ ├── factory Excel插件 - 工厂
│ │ │ │ │ ├── listener Excel插件 - 监听器
│ │ │ │ │ └── msg Excel插件 - 信息
│ │ │ │ │
│ └── opsli-plugins-redis Redis缓存插件(一级缓存)
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── org
│ │ │ │ │ └── opsli
│ │ │ │ │ └── plugins
│ │ │ │ │ └── redis
│ │ │ │ │ ├── conf Redis缓存插件 - 自动装配
│ │ │ │ │ ├── exception Redis缓存插件 - 异常类
│ │ │ │ │ ├── jsonserializer Redis缓存插件 - json特殊处理器
│ │ │ │ │ ├── lock Redis缓存插件 - 分布式锁
│ │ │ │ │ ├── msg Redis缓存插件 - 信息
│ │ │ │ │ ├── pushsub Redis缓存插件 - 消息订阅
│ │ │ │ │ └── scripts Redis缓存插件 - 脚本处理
│ │ │ │ └── resources
│ │ │ │ │ └── lua Redis缓存插件 - Lua脚本
│ │ │ │ │
│ └── opsli-plugins-redisson Redisson分布式锁
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── org
│ │ │ │ │ └── opsli
│ │ │ │ │ └── plugins
│ │ │ │ │ └── redis
│ │ │ │ │ ├── annotation Redisson分布式锁 - 注解
│ │ │ │ │ ├── conf Redisson分布式锁 - 自动装配
│ │ │ │ │ ├── constant Redisson分布式锁 - 常量
│ │ │ │ │ ├── enums Redisson分布式锁 - 枚举类
│ │ │ │ │ ├── properties Redisson分布式锁 - 配置类
│ │ │ │ │ └── strategy Redisson分布式锁 - 策略
│ │ │ │ │
│ ├── opsli-plugins-security 安全认证插件包
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── org
│ │ │ │ │ └── opsli
│ │ │ │ │ └── plugins
│ │ │ │ │ └── security
│ │ │ │ │ ├── authentication 安全认证插件包 - 识别器
│ │ │ │ │ ├── checker 安全认证插件包 - 检查器
│ │ │ │ │ ├── eventbus 安全认证插件包 - 消息事件
│ │ │ │ │ ├── eventdto 安全认证插件包 - 消息事件DTO
│ │ │ │ │ ├── exception 安全认证插件包 - 异常
│ │ │ │ │ ├── handler 安全认证插件包 - 登陆处理器
│ │ │ │ │ ├── properties 安全认证插件包 - 配置文件
│ │ │ │ │ ├── provider 安全认证插件包 - Security认证器
│ │ │ │ │ ├── service 安全认证插件包 - 加载用户信息抽象Service
│ │ │ │ │ ├── utils 安全认证插件包 - 工具包
│ │ │ │ │ └── vo 安全认证插件包 - VO
│ │ │ │ │
│ ├── opsli-plugins-sms 短信插件包
│ │ ├── src
│ │ │ ├── main
│ │ │ │ ├── java
│ │ │ │ │ └── org
│ │ │ │ │ └── opsli
│ │ │ │ │ └── plugins
│ │ │ │ │ └── sms
│ │ │ │ │ ├── enums 短信插件包 - 配置文件
│ │ │ │ │ ├── exception 短信插件包 - 异常处理类
│ │ │ │ │ ├── model 短信插件包 - 模型
│ │ │ │ │ ├── msg 短信插件包 - 异常消息
│ │ │ │ │ └── service 短信插件包 - 服务处理
│ │ │ │ │
│ └── opsli-plugins-waf Waf软防火墙
│ ├── src
│ │ ├── main
│ │ │ ├── java
│ │ │ │ └── org
│ │ │ │ └── opsli
│ │ │ │ └── plugins
│ │ │ │ └── redis
│ │ │ │ ├── conf Waf软防火墙 - 自动装配
│ │ │ │ ├── filter Waf软防火墙 - 拦截器
│ │ │ │ ├── msg Waf软防火墙 - 信息
│ │ │ │ ├── properties Waf软防火墙 - 配置类
│ │ │ │ ├── servlet Waf软防火墙 - Servlet处理器
│ │ │ │ └── util Waf软防火墙 - 工具包
│ │ │ │
└── opsli-starter 启动类
└── src
└── main
├── java
│ └── org
│ └── opsli 启动类 - 启动器
└── resources 启动类 - 配置
└── config 启动类 - 其他配置
作者寄语
感谢Star,感恩相遇,愿世间美好与我们环环相扣,加油!屏幕前的我们,打破桎梏,坚守初心。其实人生改变命运的机会并没有太多,我们并不是不优秀,我们也并不是一无是处,我们也希望驻足山巅被众人仰望,也许我们缺少的只是一个机会,缺少的只是生命中的导师,我希望这个框架帮助到更多的人,希望有一天,我们面试的时候不再胆怯,希望有一天别人看到的不仅仅是你的努力,还有你的功成名就,出人头地。
鸣谢
版权说明
opsli-boot 采用 Apache License2.0协议
opsli-ui 是对于市面上开源的产品进行的二次开发,请相关开发者遵循对应前端框架的开源协议
代码可用于个人项目等接私活或企业项目脚手架使用,完全免费
二次开发如用于开源竞品请先联系群主沟通,未经审核视为侵权
请不要删除和修改源码头部的版权与作者声明及出处
贡献者列表
Stars 趋势
Gitee
Github
支持
谢谢您愿意支持开源