Erupt:开源低代码 全栈类 框架,开发后端系统利器,无商用限制
wptr33 2025-05-11 18:51 14 浏览
Erupt简介
Erupt 是一个低代码 全栈类 框架,它使用 Java 注解 动态生成页面以及增、删、改、查、权限控制等后台功能。
零前端代码、零 CURD、自动建表,仅需 一个类文件 + 简洁的注解配置,快速开发出企业级 Admin 管理后台。
提供企业级中后台管理系统的全栈解决方案,大幅压缩研发周期,专注核心业务。
完美取代 代码生成器,开发后台管理系统更优解!
特性
- 易于上手:会简单的 Spring Boot 基础知识即可
- 使用简单:仅需了解 @Erupt 与 @EruptField 两个注解即可上手开发
- 代码简洁:前端零代码,后端 template、controller、service、dao 都不需要,仅需一个类文件即可
- 敏捷开发:仅单个.java文件即可实现后台管理功能,专注业务与核心功能的研发
- 快速迭代:需求变更仅需修改或添加注解配置即可,迭代速度比需求讨论速度还快
- 功能强大:动态条件处理,支持增删改查等功能代理接口,Session存储机制选择,行为日志记录等
- 自动建表:依托于JPA可自动帮你完成数据库建表相关工作
- 低侵入性:几乎所有功能都围绕注解而展开,不影响Spring Boot其他功能或三方库库的使用
- 多数据源:支持:MySQL、Oracle、SQL Server、PostgreSQL、H2,甚至支持 MongoDB
- 大量组件:滑动输入、时间选择、一对多、图片上传、代码编辑器、自动完成、树、多对多、地图等23类组件
- 丰富展示:普通文本、二维码、链接、图片、HTML、代码段、iframe、swf等
- 代码生成:erupt代码已经足够简洁,代码生成器可进一步提升开发效率
- 高扩展性:支持自定义数据源实现、自定义页面、动态权限管理、生命周期函数、自定义OSS等
- 界面美观:每个交互都精心设计,产品思维打磨,只为了更好的操作体验
- 权限管理:用户管理、角色管理、组织管理、菜单管理、登录日志、操作日志等
- 高安全性:可靠的安全机制,登录白名单,权限验证,注解项检查,细颗粒度权限控制,为你的数据保驾护航
- 响应式布局:支持PC端手机端等各种规格的设备中使用
- 无需二次开发:仅需引用 jar 包即可 !
- 支持扩展页面:可开发自定义页面,自定义弹出层,且支持:原生H5 / Freemarker / Thymeleaf等方式渲染
环境搭建
环境依赖
- Java 版本 1.8.0 及以上
- Spring Boot 版本 2.0 及其以上
- 数据库默认MySql,可使用MySql5.7
- 前端:Node.js 10.9.0 或更高版本
- 浏览器:主流浏览器即可
代码示例
采用前后端分离的方式开发,可对前后端分别进行部署。
后端部署
这里采用下载源码,导入IDE编译运行的方式进行。
1.使用git下载erupt示例源码
git clone https://gitee.com/erupt/erupt-example.git
2.编译运行
使用IntelliJ IDEA开发工具打开源码并修改配置文件。
erupt:
# 是否开启csrf防御
csrfInspect: true
# 是否开启redis方式存储session,默认false,开启后需在配置文件中添加redis配置(同 spring boot)
redisSession: false
# 附件上传存储路径, 默认路径为:/opt/erupt-attachment
uploadPath: D:/erupt/attachment
# 是否保留上传文件原始名称
keepUploadFileName: false
# 登录session时长(redisSession为true时有效)
upms.expireTimeByLogin: 60
# 是否记录操作日志,默认true,该功能开启后可在【系统管理 → 操作日志】中查看操作日志
security.recordOperateLog: true
spring:
datasource:
url: jdbc:mysql://localhost:3306/erupt-example?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
username: root
password: 123456
如上代码段所示,根据本地环境,修改附件上传存储路径uploadPath为本地实际存储路径;
修改数据库连接字符串:spring:datasource:url,账户密码根据自己本地数据库信息进行填写,修改完成后编译程序。
初始化数据库
首先手动创建数据库"erupt-example",然后运行ExampleApplication,程序启动后会自动初始化数据库。
前端部署
1.使用git下载erupt前端源码erupt-web
git clone https://gitee.com/erupt/erupt-web.git
2.安装依赖并启动前端
安装依赖
yarn install
修改接口url:在根目录打开proxy.config.json文件,并修改key值为target的值为服务端对应的url地址,修改完成后启动即可。
proxy.config.json
{
"/": {
"target":"http://localhost:8080",
"secure":false,
"logLevel":"info",
"changeOrigin":true
}
}
yarn run start
简单使用
默认用户名:erupt 默认密码:erupt
输入http://127.0.0.1:4400/(我本地设置的前端端口为4400),进入登录页面,并输入密码,首次登录成功会提示修改密码,登录成功如下图所示。
Erupt 使用 Apache License 2.0 协议,源代码完全开源,无商业限制。 开源不易如果喜欢请给作者 Star 鼓励
相关推荐
- redis的八种使用场景
-
前言:redis是我们工作开发中,经常要打交道的,下面对redis的使用场景做总结介绍也是对redis举报的功能做梳理。缓存Redis最常见的用途是作为缓存,用于加速应用程序的响应速度。...
- 基于Redis的3种分布式ID生成策略
-
在分布式系统设计中,全局唯一ID是一个基础而关键的组件。随着业务规模扩大和系统架构向微服务演进,传统的单机自增ID已无法满足需求。高并发、高可用的分布式ID生成方案成为构建可靠分布式系统的必要条件。R...
- 基于OpenWrt系统路由器的模式切换与网页设计
-
摘要:目前商用WiFi路由器已应用到多个领域,商家通过给用户提供一个稳定免费WiFi热点达到吸引客户、提升服务的目标。传统路由器自带的Luci界面提供了工厂模式的Web界面,用户可通过该界面配置路...
- 这篇文章教你看明白 nginx-ingress 控制器
-
主机nginx一般nginx做主机反向代理(网关)有以下配置...
- 如何用redis实现注册中心
-
一句话总结使用Redis实现注册中心:服务注册...
- 爱可可老师24小时热门分享(2020.5.10)
-
No1.看自己以前写的代码是种什么体验?No2.DooM-chip!国外网友SylvainLefebvre自制的无CPU、无操作码、无指令计数器...No3.我认为CS学位可以更好,如...
- Apportable:拯救程序员,IOS一秒变安卓
-
摘要:还在为了跨平台使用cocos2d-x吗,拯救objc程序员的奇葩来了,ApportableSDK:FreeAndroidsupportforcocos2d-iPhone。App...
- JAVA实现超买超卖方案汇总,那个最适合你,一篇文章彻底讲透
-
以下是几种Java实现超买超卖问题的核心解决方案及代码示例,针对高并发场景下的库存扣减问题:方案一:Redis原子操作+Lua脚本(推荐)//使用Redis+Lua保证原子性publicbo...
- 3月26日更新 快速施法自动施法可独立设置
-
2016年3月26日DOTA2有一个79.6MB的更新主要是针对自动施法和快速施法的调整本来内容不多不少朋友都有自动施法和快速施法的困扰英文更新日志一些视觉BUG修复就不翻译了主要翻译自动施...
- Redis 是如何提供服务的
-
在刚刚接触Redis的时候,最想要知道的是一个’setnameJhon’命令到达Redis服务器的时候,它是如何返回’OK’的?里面命令处理的流程如何,具体细节怎么样?你一定有问过自己...
- lua _G、_VERSION使用
-
到这里我们已经把lua基础库中的函数介绍完了,除了函数外基础库中还有两个常量,一个是_G,另一个是_VERSION。_G是基础库本身,指向自己,这个变量很有意思,可以无限引用自己,最后得到的还是自己,...
- China's top diplomat to chair third China-Pacific Island countries foreign ministers' meeting
-
BEIJING,May21(Xinhua)--ChineseForeignMinisterWangYi,alsoamemberofthePoliticalBureau...
- 移动工作交流工具Lua推出Insights数据分析产品
-
Lua是一个适用于各种职业人士的移动交流平台,它在今天推出了一项叫做Insights的全新功能。Insights是一个数据平台,客户可以在上面实时看到员工之间的交流情况,并分析这些情况对公司发展的影响...
- Redis 7新武器:用Redis Stack实现向量搜索的极限压测
-
当传统关系型数据库还在为向量相似度搜索的性能挣扎时,Redis7的RedisStack...
- Nginx/OpenResty详解,Nginx Lua编程,重定向与内部子请求
-
重定向与内部子请求Nginx的rewrite指令不仅可以在Nginx内部的server、location之间进行跳转,还可以进行外部链接的重定向。通过ngx_lua模块的Lua函数除了能实现Nginx...
- 一周热门
-
-
C# 13 和 .NET 9 全知道 :13 使用 ASP.NET Core 构建网站 (1)
-
因果推断Matching方式实现代码 因果推断模型
-
git pull命令使用实例 git pull--rebase
-
git pull 和git fetch 命令分别有什么作用?二者有什么区别?
-
面试官:git pull是哪两个指令的组合?
-
git 执行pull错误如何撤销 git pull fail
-
git fetch 和git pull 的异同 git中fetch和pull的区别
-
git pull 之后本地代码被覆盖 解决方案
-
还可以这样玩?Git基本原理及各种骚操作,涨知识了
-
git命令之pull git.pull
-
- 最近发表
- 标签列表
-
- git pull (33)
- git fetch (35)
- mysql insert (35)
- mysql distinct (37)
- concat_ws (36)
- java continue (36)
- jenkins官网 (37)
- mysql 子查询 (37)
- python元组 (33)
- mybatis 分页 (35)
- vba split (37)
- redis watch (34)
- python list sort (37)
- nvarchar2 (34)
- mysql not null (36)
- hmset (35)
- python telnet (35)
- python readlines() 方法 (36)
- munmap (35)
- docker network create (35)
- redis 集合 (37)
- python sftp (37)
- setpriority (34)
- c语言 switch (34)
- git commit (34)