# LuBase **Repository Path**: lubase/lu-base ## Basic Information - **Project Name**: LuBase - **Description**: 这是LuBase低代码开发框架的后端项目源码,通过SpringBoot进行开发。#多应用#、#快速开发平台# 、#低代码框架#、#低代码工具# - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: http://lubase.cn/ - **GVP Project**: No ## Statistics - **Stars**: 166 - **Forks**: 23 - **Created**: 2024-05-22 - **Last Updated**: 2026-01-06 ## Categories & Tags **Categories**: lowcode **Tags**: 多应用, 快速开发平台, 低代码, 低代码开发框架, 低代码框架 ## README # LuBase框架全解析 **阅读说明**:本文面向具备一定IT技术背景的开发者,完整研读约需5-10分钟,可快速掌握LuBase框架的核心能力、技术特性及落地实践价值,为技术选型与项目落地提供参考。 ## 一、框架概述 ### 1.1 核心特性 LuBase是一款融合多应用管理、快速开发与低代码构建能力的企业级开发框架,以数据模型驱动为核心架构,深耕企业信息化领域,致力于为开发者提供高效易用的开发利器,显著提升管理类软件的研发效率、迭代响应速度与交付质量。 ### 1.2 框架定位 LuBase本质是专为**软件开发人员**打造的低代码开发平台,不面向业务人员设计,因此未将业务端易用性作为核心诉求。其核心应用场景聚焦企业信息化领域,通过对页面交互逻辑、通用业务功能的高阶封装,构建平台化、生态化开发工具,助力开发者摆脱重复编码的冗余工作,专注于业务需求的深度拆解、逻辑梳理与解决方案落地实现。 ### 1.3 技术栈选型 |模块|技术选型| |---|---| |前端|Vue3| |后端|SpringBoot 3.5、JDK17| |数据库|MySQL、SQL Server、Oracle| ## 二、核心功能模块 1. **多应用管理(含权限)**:支持多应用独立配置数据库,前后端可实现完全分离部署,每个应用配备专属角色权限管理体系,实现多应用的精细化管控与运维,有效降低多应用协同开发的管理成本、运维复杂度及数据耦合风险。 2. **数据模型引擎**:提供字典表管理、物理表可视化创建、表间关系灵活配置等核心能力,以规范化的数据模型设计为基石,为后续全流程快速开发筑牢基础,从源头保障数据结构的合理性、一致性与系统可扩展性。 3. **表单设计引擎**:基于已构建的数据模型,支持表单可视化拖拽式设计,无需手动编写大量重复性表单代码,大幅缩短表单开发周期,同时提升表单样式一致性与开发标准化水平。 4. **页面设计引擎**:封装主流页面版式及通用按钮交互逻辑,通过直接引用数据源即可快速完成列表页面配置,减少页面布局的重复性编码工作,提升页面开发效率与交付质量。 5. **工作流引擎**:与表单引擎深度耦合集成,可满足企业日常各类业务流程的配置需求;通过MQ机制对外暴露流程全生命周期事件,开发者可基于事件监听机制实现自定义业务功能开发,具备极强的拓展灵活性与业务适配能力。 ## 三、部署模式 LuBase提供两种灵活的部署模式,可根据项目规模、团队协作模式及业务场景精准适配,兼顾单人独立开发与团队协同交付需求,降低部署运维成本: |部署模式|核心区别与适用场景| |---|---| |单体模式|适用于单项目交付场景,部署流程简洁高效,可快速完成项目开发、测试、上线全流程交付,显著降低小型项目的部署运维成本与技术门槛。| |多租户多应用模式|适用于团队协作开发场景,仅需部署一套开发者管理端,即可支撑多应用、多租户并行开发与集中管控,提升团队协作效率与项目管理规范性,适配规模化开发需求。| 两种部署模式的详细架构图,可参考系统演示环境中的可视化展示(演示环境获取方式见文末官方交流群)。 #### 单体模式部署架构 ![输入图片说明](https://foruda.gitee.com/images/1767490139049699956/e0116461_10523320.jpg "屏幕截图") #### 多租户多应用模式部署架构 ![输入图片说明](https://foruda.gitee.com/images/1767490161337769721/89b6012c_10523320.jpg "屏幕截图") ## 四、平台设计理念 1. **数据模型驱动**:无论是否借助开发工具,规范化的数据库设计都是高效开发的核心前提。LuBase以数据模型为核心枢纽,串联表单、页面、流程全流程开发环节,从源头保障开发规范性、数据一致性与系统可扩展性,适配业务长期迭代需求。 2. **全链路扩展能力**:工具封装始终以“不牺牲二次开发灵活性”为核心原则,在页面全生命周期的前后端关键节点均预留扩展接口;同时支持原生开发模式重写页面,可充分满足复杂个性化业务场景的开发需求,兼顾开发效率与业务灵活度。 3. **私有化部署适配**:原生支持多租户、多应用管理及私有化部署,各应用前后端可实现独立部署、独立配置数据库,有效规避应用间性能干扰与数据安全风险,保障系统运行稳定性、数据合规性与业务独立性。 ## 五、项目源码获取 LuBase项目全部源码采用Apache-2.0开源协议,可自由集成至各类项目中使用,无商业限制。源码分为2个仓库,具体信息如下: |代码功能|仓库地址|备注| |---|---|---| |主框架|https://gitee.com/lubase/lu-base.git|框架核心功能模块| |流程引擎|https://gitee.com/lubase/lubase-wfengine.git|支持替换为其他流程引擎| 流程引擎单独拆分至独立仓库,旨在支持开发者替换为Flowable等其他主流流程引擎,仅需完成少量代码适配即可集成。如需技术支持,可联系官方团队,也可自行完成适配改造。 ## 六、私有化部署(单项目模式) 以下为单项目模式下的详细部署流程,步骤清晰可落地,开发者可按此快速搭建本地或服务器运行环境。 #### 6.1 环境准备 1. MySQL 8.0:需提前安装并启动服务,确保数据库服务正常运行 2. Redis:用于系统缓存,提升接口响应速度与系统并发性能 3. JDK 17:严格适配后端技术栈要求,避免版本不兼容问题 4. Nginx:用于前端项目部署与接口反向代理,保障访问稳定性 #### 6.2 数据库初始化 创建主数据库(默认名称为lubase,可根据实际需求自定义修改),执行项目db目录下的SQL脚本,完成主数据库表结构与初始化数据配置。 #### 6.3 启动管理端服务 修改lubase-admin项目的YAML配置文件,准确配置LuBase数据库连接地址、Redis连接地址及服务端口,保存配置后启动后端服务。管理端静态文件已集成至后端项目,无需单独部署前端,服务启动成功后即可通过配置端口访问管理端。 完成上述步骤后,即可正常访问LuBase管理端,管理端界面如下所示: ![输入图片说明](https://foruda.gitee.com/images/1767490182218425242/2e6962b8_10523320.jpg "屏幕截图") #### 6.4 启动业务端 业务端需单独部署后端API服务与前端Web项目。项目内置example示例工程,提供后端服务集成参考,前端代码存放于lubase-biz-ui文件夹中。 ![输入图片说明](https://foruda.gitee.com/images/1767532039984347534/392b3e53_10523320.png "屏幕截图") **biz-api:** example后端项目启动前 需要调整配置文件中 lubase.app-id 为 您在管理端新建的 应用id之后再启动。 **biz-web:** 前端项目部署时需配置Nginx反向代理,具体配置如下(可根据实际部署环境调整): ```Plain Text server { # 配置与管理端不同的端口,避免端口冲突 listen 81; server_name localhost; location / { # 指定业务端前端文件根路径(需替换为实际部署路径) root /dist/html; index index.html index.htm; } location /api/ { # 反向代理至业务端后端API服务地址(需替换为实际服务地址) proxy_pass http://XX.XX.XX.XX:port/; client_max_body_size 50m; # 限制请求体大小,适配文件上传场景 client_body_timeout 60s; # 设置请求体读取超时时间,避免请求中断 } add_header Cache-Control no-cache; # 禁止缓存,保障前端资源实时更新 } ``` ## 七、业务端二次开发 业务端二次开发可快速接入框架核心能力,仅需在项目中引入以下Maven依赖即可启动开发: ```Plain Text io.github.lubase lubase-core 3.1.9 ``` 更多详细开发指南、API文档及最佳实践,可参考:[语雀-LuBase二次开发文档](https://www.yuque.com/jiaque-okoeu/zt6gq2/bgd5nxbbngqtog9h)。 ## 八、入群交流&获取系统演示地址 扫码加入LuBase官方交流群,可获取演示环境地址、最新版本更新通知及专属技术支持:[点击入群](https://gitee.com/lubase/lu-base/issues/I9U4LD) ## 九、使用客户 我们的客户既有500强企业,也有个人使用者进行接单使用 ## 核心关键词 多应用、快速开发平台、低代码开发框架、低代码框架、低代码、低代码工具、低代码开发工具