前言
做企业软件的人都有一个感受:客户的需求变起来没完没了。今天加个字段,明天改个流程,后天又要整合一个新系统。每次改完代码、打包、发布,一来一回几天就过去了。
低代码平台就是冲着这个痛点来的。JECloud就是这样一个平台——后端微服务架构、前端微应用架构,核心思路是用模型驱动的方式快速构建企业应用。不管是ERP、OA、CRM还是WMS、MES,都能在上面搭出来。
项目介绍
JECloud是一个开源的企业级低代码平台,后端基于Java,前端基于Vue3。整个平台采用模型驱动的设计模式,数据和界面都通过模型来定义,而不是硬编码。
说得直白一点:你在平台里配好一个表结构、设置好字段类型、拖拽几个控件,一个功能模块就出来了。整个过程基本不用写代码。如果确实需要扩展,前后端也都留了代码植入的入口,不会把你卡死。
目前项目在Gitee上开源,采用MIT协议,适合软件公司、企业IT部门、以及自己做项目的个人使用。
项目功能
功能模块 | 具体能力 |
| 资源表引擎 | 在线建表、字段配置、索引管理、数据字典 |
| 列表规划器 | 拖拽配置列表布局、筛选条件、排序规则、按钮设置 |
| 表单规划器 | 可视化设计表单、字段校验、数据联动、子表支持 |
| 工作流规划器 | 在线画流程图、节点配置、条件分支、审批人设置 |
| RBAC权限 | 用户、角色、菜单、数据权限多维度控制 |
| 报表与看板 | 图表配置、数据看板、大屏展示 |
| 文档管理 | 文件上传下载、在线预览、分类管理 |
| 消息推送 | 站内信、待办提醒、流程通知 |
从功能架构来看,这是一个覆盖了"数据建模—界面生成—流程流转—权限控制"完整链条的低代码平台。
项目架构
平台功能
资源引擎
列表规划器
标准功能列表
表单规划器
标准表单
工作流
项目特点
1、模型驱动,配置替代编码
核心逻辑是通过元数据来描述表结构、界面布局、业务流程。改动一个模型,前端界面和后端逻辑同步更新,不需要重新编译和部署。
2、微服务+微应用,模块独立
后端拆成了元数据、RBAC、工作流、消息等多个微服务,每个服务可以用不同数据库独立运行。前端也是多个微应用组成,按需加载,互不干扰。
3、开放性强,留了改造入口
平台虽然封装了很多功能,但并没有做成一个黑盒。前后端都预留了代码植入点,想自定义逻辑或者接入外部系统都可以。
4、企业级功能完整
不是那种只能做简单表单的小工具。工作流支持Activiti 7和自研BPM引擎,权限可以控制到数据行级别,列表支持锁定列、复杂表头、主从表单这些企业常用的功能。
项目技术
分类 | 技术栈 |
| 后端语言 | Java |
| 前端框架 | Vue3、VueRouter4、Pinia2 |
| 微服务架构 | ServiceComb、ServiceCenter |
| 网关 | Service Edge |
| 工作流 | Activiti 7、JECloudBPM |
| ORM | MyBatis、JEDB(自研) |
| 认证 | Sa-Token、JECloud-Auth |
| 数据库 | MySQL |
| 缓存 | Redis |
| 消息队列 | RocketMQ |
| 调度 | XXLJob |
| 监控 | Promethus、SkyWalking |
| 前端UI | AntDesign Vue3 |
| 表格组件 | VxeTable |
| 代码编辑器 | MonacoEditor |
| 画图工具 | MxGraph |
| 微前端 | Micro-App |
| 构建工具 | Webpack 4、Gulp4、Lerna4 |
从技术选型来看,用的都是比较成熟的开源组件,没有搞太多标新立异的东西,对二次开发和运维都比较友好。
项目效果
平台提供了完整的演示系统,每天12点和24点自动恢复到初始状态,可以随便折腾。
从官方展示的截图来看,资源表引擎、列表规划器、表单规划器这些核心模块都已经做出来了。列锁定、复杂表头、主从表单这些功能也有实现。工作流规划器支持在线画图,节点配置算是比较完整的。
对于软件公司来说,可以用它快速交付项目,降低开发成本。对于企业内部IT团队,可以用来搭建各种管理系统,响应业务部门的需求。
项目源码
JECloud的源码分得比较细,下面整理了一下:
前端项目(共11个)
项目名 | 说明 |
jecloud-pc-admin | 主项目 |
jecloud-pc-archetype | 骨架项目 |
jecloud-pc-libs | 基础库 |
jecloud-pc-table | 资源表 |
jecloud-pc-function | 应用中心 |
jecloud-pc-workflow | 工作流 |
jecloud-pc-rbac | 权限管理 |
jecloud-pc-menu | 菜单 |
jecloud-pc-datasource | 数据源 |
jecloud-pc-settings | 系统设置 |
jecloud-pc-login | 登录 |
jecloud-pc-boards | 展板 |
后端项目(共10个)
项目名 | 说明 |
jecloud-common | 基础公共模块 |
jecloud-gateway | 动态网关 |
jecloud-meta | 元数据核心 |
jecloud-rbac | 权限控制 |
jecloud-workflow | 工作流引擎 |
jecloud-document | 文档管理 |
jecloud-message | 消息推送 |
jecloud-connector | 连接器 |
jecloud-demo | 案例示例 |
jecloud-service-archetype | 骨架模板 |
中间件项目
项目名 | 说明 |
jecloud-auth | 认证中间件 |
jecloud-bpm | 工作流中间件 |
je-ibatis | JE持久层框架 |
jecloud-mxgraph | mxgraph封装 |
部署方面支持安装包(Linux)和Docker-Compose(Linux/Windows)两种方式,开源证书到2026年6月30日过期。
总结
JECloud做的是企业低代码这个方向。市面上同类产品不少,但像它这样后端微服务+前端微应用、而且完整开源的企业级平台确实不太多。
个人觉得比较实在的地方:一是模型驱动的设计思路清晰,资源表、列表、表单、工作流都有对应的配置器;二是技术栈选择比较主流,上手门槛不高;三是前后端都留了代码入口,不至于在平台能力边界上卡住。
如果你的团队需要快速交付企业应用,或者企业内部有大量管理系统的需求,可以花点时间看看这个项目。
关键词
作者:小码编匠
出处:gitee.com/smallcore/DotNetCore
声明:网络内容,仅供学习,尊重版权,侵权速删,歉意致谢!
方便大家交流、资源共享和共同成长
纯技术交流群、需要的小伙伴请扫码
有收获?不妨分享让更多人受益
关注「程序员开源栈」,共同提升技术实力