Spring Boot快速开发企业级Admin管理后台

Stella981
• 阅读 1027

Erupt 可快速的构建管理页面,零前端代码、零CURD、自动建表,仅需单个类文件 + 简洁的注解配置,即可快速开发企业级Admin管理后台!

后台管理系统非常重要,但开发存在一定的痛点,如:开发效率低、界面不美观、交互不理想、工作量重复、存在安全漏洞、后端研发被迫写前端代码等。我是程序汪

Erupt提供企业级中后台管理系统的全栈解决方案,提供超多业务组件,简洁美观的后台页面,支持23类数据组件,多种数据源支持,严密的安全策略,压缩研发周期,降低研发成本。关注Java项目分享

注:我不是代码生成器,代码生成器并非后台开发的最优解。代码生成器的本质还是生成繁琐的后台代码,一旦修改后期生成的代码很难合并,虽然减轻了一部分工作,可解决方式并非最佳。关注Java项目分享

特性 | Features

  • 易于上手:仅需了解@Erupt与@EruptField两个注解即可上手开发。
  • 代码简洁:前端零代码,后端template、controller、service、dao都不需要,仅需一个实体类即可。
  • 敏捷开发:仅单个.java文件即可实现后台管理功能,专注业务与核心功能的研发。
  • 快速迭代:需求变更仅需修改或添加注解配置即可,迭代速度比需求讨论速度还快。
  • 功能强大:动态条件处理,支持增删改查等功能代理接口,Session存储机制选择,行为日志记录等。
  • 高安全性:可靠的安全机制,登录白名单,菜单权限验证,请求头检查,注解项检查,细颗粒度权限控制,为你的数据保驾护航。
  • 自动建表:依托于JPA可自动帮你完成数据库建表相关工作。关注Java项目分享
  • 低侵入性:几乎所有功能都围绕注解而展开,不影响Spring Boot其他功能或三方库库的使用。
  • 多数据源:MySQL、Oracle、SQL Server、PostgreSQL、H2,甚至支持MongoDB。
  • 多种组件:支持滑动输入、时间选择、开关、图片上传、代码编辑器、自动完成、树、多选框、地图等23类组件
  • 丰富展示:普通文本、二维码、链接、图片、HTML、代码段、iframe、swf等
  • 代码生成:erupt代码已经足够简洁,代码生成器可进一步提升开发效率。
  • 扩展性强:支持自定义数据源实现、自定义页面、自定义模板、自定义附件上传机制等。
  • 界面美观:每个交互都精心设计,产品思维打磨,只为了更好的操作体验。
  • 响应式布局:支持PC端手机端等各种规格的设备中使用。我是程序汪

代码示例 | Code

@Erupt(name = "入门示例")
@Table(name = "t_xxxxxx") //数据库表名
@Entity
public class Simple extends BaseModel {

    @EruptField(
            views = @View(title = "文本"),
            edit = @Edit(title = "文本")
    )
    private String input;
    
    @EruptField(
            views = @View(title = "数值"),
            edit = @Edit(title = "数值")
    )
    private Integer number;

    @EruptField(
            views = @View(title = "布尔"),
            edit = @Edit(title = "布尔")
    )
    private Boolean bool;

    @EruptField(
            views = @View(title = "时间"),
            edit = @Edit(title = "时间")
    )
    private Date date;

}

运行效果

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

演示截图 | Screenshot

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

Spring Boot快速开发企业级Admin管理后台

模块说明 | Module

erupt
├── erupt-annotation -- 核心注解声明
├── erupt-core -- 核心功能包
├── erupt-data -- 数据实现包
     ├── erupt-jpa -- 关系型数据库erupt实现
     └── erupt-mongodb -- mongodb数据库erupt实现
├── erupt-job -- 定时任务功能
├── erupt-security -- 接口数据安全模块
├── erupt-upms -- 用户权限管理
└── erupt-web -- 前端页面

erupt-pro //暂未开放  star超过1K开源erupt-tpl模块与erupt-generator模块
├── erupt-bi -- 通过sql加js混编实现动态报表,支持多数据源,支持十几种图表
├── erupt-tpl -- 支持在erupt中自定义页面,自定义图表,自定义模板等功能,模板引擎支持freemarker/thymeleaf/原生H5
└── erupt-generator -- 代码生成器,通过简单配置,生成erupt代码段

技术体系 | Technology system

后端:

Java 8、 ScriptEngine、 Annotation、 JDBC、 Reflect、 Spring Boot、 JPA、 Hibernate、 Quartz、 Gson、 Lombok、 Freemarker、 Thymeleaf ...

前端:

JavaScript、 H5、 MVVM、 Router、 Angular CLI、 Angular、 NG-ZORRO、 NG-ALAIN、 G2Plot、 RxJS、 TypeScript、 Less ...

在线演示 | Demo

演示地址:https://www.erupt.xyz/demo 账号密码:guest / guest

仓库

国内仓库:https://gitee.com/erupt/erupt

国外仓库:https://github.com/erupts/erupt (如果github图片不显示请访问国内仓库)

欢迎关注公众号 【码农开花】一起学习成长 我会一直分享Java干货,也会分享免费的学习资料课程和面试宝典 回复:【计算机】【设计模式】【面试】有惊喜哦

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
2年前
java将前端的json数组字符串转换为列表
记录下在前端通过ajax提交了一个json数组的字符串,在后端如何转换为列表。前端数据转化与请求varcontracts{id:'1',name:'yanggb合同1'},{id:'2',name:'yanggb合同2'},{id:'3',name:'yang
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Wesley13 Wesley13
2年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
2年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
2年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
为什么mysql不推荐使用雪花ID作为主键
作者:毛辰飞背景在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这