百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

一款无需写任何代码即可一键生成前后端代码的开源工具

csdh11 2025-02-08 10:42 21 浏览

作者:HelloGitHub-小鱼干

JeecgBoot 是一款基于代码生成器的低代码开发平台,零代码开发。JeecgBoot 采用开发模式:Online Coding 模式-> 代码生成器模式-> 手工 MERGE 智能开发,帮助解决 Java 项目 70% 的重复工作,让开发更多关注业务逻辑。

它引入了 No Coding 概念:在线表单配置(表单设计器)、移动配置能力、工作流配置(在线设计流程)、报表配置能力、在线图表配置、插件能力(可插拔)…

技术架构

开发环境

  • 语言:Java 8
  • IDE(JAVA):IDEA/Eclipse 安装 lombok 插件
  • IDE(前端):WebStorm 或者 IDEA
  • 依赖管理:Maven
  • 数据库:MySQL 5.7+ & Oracle 11g & Sqlserver 2017
  • 缓存:Redis

后端

  • 基础框架:Spring Boot 2.1.3.RELEASE
  • 持久层框架:Mybatis-plus_3.1.2
  • 安全框架:Apache Shiro 1.4.0,Jwt_3.7.0
  • 数据库连接池:阿里巴巴 Druid 1.1.10
  • 缓存框架:Redis
  • 日志打印:logback
  • 其他:fastjson、poi、Swagger-ui、quartz、lombok(简化代码)等

前端

  • Vue 2.6.10、Vuex、Vue Router
  • Axios
  • ant-design-vue
  • webpack、yarn
  • vue-cropper - 头像裁剪组件
  • @antv/g2 - Alipay AntV 数据可视化图表
  • Viser-vue - antv/g2 封装实现
  • eslint、@vue/cli 3.2.1
  • vue-print-nb - 打印

功能模块

├─系统管理
│??├─用户管理
│??├─角色管理
│??├─菜单管理
│??├─权限设置(支持按钮权限、数据权限)
│??├─表单权限(控制字段禁用、隐藏)
│??├─部门管理
│??├─我的部门(二级管理员)
│??└─字典管理
│??└─分类字典
│??└─系统公告
│??└─职务管理
│??└─通讯录
│??└─多租户管理
├─消息中心
│??├─消息管理
│??├─模板管理
├─智能化功能
│??├─代码生成器功能(一键生成前后端代码,生成后无需修改直接用,绝对是后端开发福音)
│??├─代码生成器模板(提供4套模板,分别支持单表和一对多模型,不同风格选择)
│??├─代码生成器模板(生成代码,自带excel导入导出)
│??├─查询过滤器(查询逻辑无需编码,系统根据页面配置自动生成)
│??├─高级查询器(弹窗自动组合查询条件)
│??├─Excel导入导出工具集成(支持单表,一对多?导入导出)
│??├─平台移动自适应支持
├─系统监控
│??├─Gateway路由网关
│??├─性能扫描监控
│??│??├─监控?Redis
│??│??├─Tomcat
│??│??├─jvm
│??│??├─服务器信息
│??│??├─请求追踪
│??│??├─磁盘监控
│??├─定时任务
│??├─系统日志
│??├─消息中心(支持短信、邮件、微信推送等等)
│??├─数据日志(记录数据快照,可对比快照,查看数据变更情况)
│??├─系统通知
│??├─SQL监控
│??├─swagger-ui(在线接口文档)
│─报表示例
│??├─曲线图
│??└─饼状图
│??└─柱状图
│??└─折线图
│??└─面积图
│??└─雷达图
│??└─仪表图
│??└─进度条
│??└─排名列表
│??└─等等
│─大屏模板
│??├─作战指挥中心大屏
│??└─物流服务中心大屏
│─常用示例
│??├─自定义组件
│??├─对象存储(对接阿里云)
│??├─JVXETable示例(各种复杂ERP布局示例)
│??├─单表模型例子
│??└─一对多模型例子
│??└─打印例子
│??└─一对多TAB例子
│??└─内嵌table例子
│??└─常用选择组件
│??└─异步树table
│??└─接口模拟测试
│??└─表格合计示例
│??└─异步树列表示例
│??└─一对多JEditable
│??└─JEditable组件示例
│??└─图片拖拽排序
│??└─图片翻页
│??└─图片预览
│??└─PDF预览
│??└─分屏功能
│─封装通用组件?
│??├─行编辑表格JEditableTable
│??└─省略显示组件
│??└─时间控件
│??└─高级查询
│??└─用户选择组件
│??└─报表组件封装
│??└─字典组件
│??└─下拉多选组件
│??└─选人组件
│??└─选部门组件
│??└─通过部门选人组件
│??└─封装曲线、柱状图、饼状图、折线图等等报表的组件(经过封装,使用简单)
│??└─在线code编辑器
│??└─上传文件组件
│??└─验证码组件
│??└─树列表组件
│??└─表单禁用组件
│??└─等等
│─更多页面模板
│??├─各种高级表单
│??├─各种列表效果
│??└─结果页面
│??└─异常页面
│??└─个人页面
├─高级功能
│??├─系统编码规则
│??├─提供单点登录CAS集成方案
│??├─提供APP发布方案
│??├─集成Websocket消息通知机制
├─Online在线低代码开发(暂未开源)
│??├─Online在线表单?-?功能已开放
│??├─在线代码生成器?-?功能已开放
│??├─Online在线报表?-?功能已开放
│??├─多数据源管理
│??├─Online在线图表
│??├─Online图表模板配置
│??├─高级表单设计器
│─流程模块功能?(暂不开源)
│??├─流程设计器
│??├─在线表单设计
│??└─我的任务
│??└─历史流程
│??└─历史流程
│??└─流程实例管理
│??└─流程监听管理
│??└─流程表达式
│??└─我发起的流程
│??└─我的抄送
│??└─流程委派、抄送、跳转
│??└─。。。
└─其他模块
???└─更多功能开发中。。
???

微服务架构图

项目截图

大屏

PC 端


手机端

iPad 端


项目地址

GitHub 传送门:
https://github.com/zhangdaiscott/jeecg-boot


最后,这里是不变的结束语,如果你有更好的 Repo 在手,记得和 HelloGitHub 资源共享下哟


HelloGitHub——分享 GitHub 上有趣、入门级的开源项目,助你找到能够提高技术的项目和知识。

相关推荐

探索Java项目中日志系统最佳实践:从入门到精通

探索Java项目中日志系统最佳实践:从入门到精通在现代软件开发中,日志系统如同一位默默无闻却至关重要的管家,它记录了程序运行中的各种事件,为我们排查问题、监控性能和优化系统提供了宝贵的依据。在Java...

用了这么多年的java日志框架,你真的弄懂了吗?

在项目开发过程中,有一个必不可少的环节就是记录日志,相信只要是个程序员都用过,可是咱们自问下,用了这么多年的日志框架,你确定自己真弄懂了日志框架的来龙去脉嘛?下面笔者就详细聊聊java中常用日志框架的...

物理老师教你学Java语言(中篇)(物理专业学编程)

第四章物质的基本结构——类与对象...

一文搞定!Spring Boot3 定时任务操作全攻略

各位互联网大厂的后端开发小伙伴们,在使用SpringBoot3开发项目时,你是否遇到过定时任务实现的难题呢?比如任务调度时间不准确,代码报错却找不到方向,是不是特别头疼?如今,随着互联网业务规模...

你还不懂java的日志系统吗 ?(java的日志类)

一、背景在java的开发中,使用最多也绕不过去的一个话题就是日志,在程序中除了业务代码外,使用最多的就是打印日志。经常听到的这样一句话就是“打个日志调试下”,没错在日常的开发、调试过程中打印日志是常干...

谈谈枚举的新用法--java(java枚举的作用与好处)

问题的由来前段时间改游戏buff功能,干了一件愚蠢的事情,那就是把枚举和运算集合在一起,然后运行一段时间后buff就出现各种问题,我当时懵逼了!事情是这样的,做过游戏的都知道,buff,需要分类型,且...

你还不懂java的日志系统吗(javaw 日志)

一、背景在java的开发中,使用最多也绕不过去的一个话题就是日志,在程序中除了业务代码外,使用最多的就是打印日志。经常听到的这样一句话就是“打个日志调试下”,没错在日常的开发、调试过程中打印日志是常干...

Java 8之后的那些新特性(三):Java System Logger

去年12月份log4j日志框架的一个漏洞,给Java整个行业造成了非常大的影响。这个事情也顺带把log4j这个日志框架推到了争议的最前线。在Java领域,log4j可能相对比较流行。而在log4j之外...

Java开发中的日志管理:让程序“开口说话”

Java开发中的日志管理:让程序“开口说话”日志是程序员的朋友,也是程序的“嘴巴”。它能让程序在运行过程中“开口说话”,告诉我们它的状态、行为以及遇到的问题。在Java开发中,良好的日志管理不仅能帮助...

吊打面试官(十二)--Java语言中ArrayList类一文全掌握

导读...

OS X 效率启动器 Alfred 详解与使用技巧

问:为什么要在Mac上使用效率启动器类应用?答:在非特殊专业用户的环境下,(每天)用户一般可以在系统中进行上百次操作,可以是点击,也可以是拖拽,但这些只是过程,而我们的真正目的是想获得结果,也就是...

Java中 高级的异常处理(java中异常处理的两种方式)

介绍异常处理是软件开发的一个关键方面,尤其是在Java中,这种语言以其稳健性和平台独立性而闻名。正确的异常处理不仅可以防止应用程序崩溃,还有助于调试并向用户提供有意义的反馈。...

【性能调优】全方位教你定位慢SQL,方法介绍下!

1.使用数据库自带工具...

全面了解mysql锁机制(InnoDB)与问题排查

MySQL/InnoDB的加锁,一直是一个常见的话题。例如,数据库如果有高并发请求,如何保证数据完整性?产生死锁问题如何排查并解决?下面是不同锁等级的区别表级锁:开销小,加锁快;不会出现死锁;锁定粒度...

看懂这篇文章,你就懂了数据库死锁产生的场景和解决方法

一、什么是死锁加锁(Locking)是数据库在并发访问时保证数据一致性和完整性的主要机制。任何事务都需要获得相应对象上的锁才能访问数据,读取数据的事务通常只需要获得读锁(共享锁),修改数据的事务需要获...