项目快照:jeecgboot/JeecgBoot,约 47,898 个 Star,16,192 个 Fork;最新推送时间 2026-09-17T10:44:45Z。本文基于仓库公开资料撰写。

项目地址:https://github.com/jeecgboot/JeecgBoot · https://jeecg.com

JeecgBoot 从代码、运行环境到实践流程的项目封面
JeecgBoot 的项目能力与实践流程示意。

项目速览(TL;DR)

JeecgBoot 是一个以 Java 为主要语言、采用 Apache License 2.0 的企业级 AI 低代码平台。仓库资料显示,项目当前默认分支为 main,GitHub Star 为 47,898,Fork 为 16,192;README 标注的最新版本为 3.9.5,日期为 2026-08-27。

项目把低代码开发、AI 应用平台和 AI 知识库放在同一套企业应用平台中,覆盖在线表单、流程、门户、报表、大屏、OA、权限、AI 聊天、知识库、MCP(Model Context Protocol)和插件等能力。项目描述中使用了“90% 重复工作”的表述,而 README 中写的是帮助解决 Java 项目中“80% 的重复工作”,两处口径存在差异,实际效率应以具体项目评估为准。

“JeecgBoot 是一款 AI 低代码开发平台,以低代码开发、AI 应用平台和 AI 知识库为核心能力。”
来源:README

定位与目标用户

本项目的定位不是单一的代码生成器,而是面向企业业务系统的全栈式开发平台。它通过在线配置、自然语言生成、代码生成和源码扩展组合使用,试图在快速搭建与保留 Java 源码可维护性之间取得平衡。

目标用户主要包括需要持续建设业务系统的 Java 团队、需要搭建内部管理应用的企业信息化团队,以及希望在已有前后端分离架构中加入 AI 应用能力的开发者。README 列举的适用场景包括 SaaS、企业信息管理系统(MIS)、内部办公系统(OA)、企业资源计划系统(ERP)、客户关系管理系统(CRM)和 AI 知识库。

  • 后端团队可以基于 Spring Boot、Spring Cloud Alibaba 和 MyBatis-Plus 生成或扩展业务代码。
  • 前端团队可以基于 Vue 3、TypeScript、Vite 和 Ant Design Vue 开发管理界面。
  • 业务人员可以使用零代码或在线配置能力参与表单、流程和应用搭建,但复杂业务仍需要开发人员审核生成结果。
  • 企业 AI 团队可以配置大模型、知识库、聊天应用、流程编排和 MCP 插件。

核心功能

核心功能可以按“生成业务系统”“搭建低代码应用”“构建 AI 应用”“沉淀企业知识”四类理解。不同能力依赖不同的页面配置、代码生成器、后端模块或外部模型服务,不能把所有功能都视为无需配置的自动化流程。

自然语言生成与 AI Skills

AI Skills(AI 技能)允许开发者使用自然语言描述业务需求。根据 README,平台可以围绕需求完成建表、前后端 CRUD(Create, Read, Update, Delete)代码、菜单权限和页面渲染等工作,生成结果可以直接运行,也可以继续手工修改。

官方资料还描述了“Skills 生成 → 在线配置 → 代码生成 → 手工合并 → AI 修改”的开发模式。其输入是自然语言业务描述或场景要求,输出可能包括业务页面、数据结构、流程、报表、大屏或代码;生成内容仍需要结合项目规范、权限模型和数据安全要求进行审查。

代码生成器

代码生成器面向单表、树表、一对一和一对多等数据模型。触发过程通常从数据表或数据模型配置开始,再生成前端页面、后端代码、建表 SQL 和菜单权限;仓库资料明确说明生成后可以直接运行,也可以继续扩展。

这一机制适合字段规则清晰、增删改查边界明确的业务模块。对于复杂事务、跨聚合数据一致性、特殊查询和已有系统的深度集成,生成代码需要进入手工合并和代码评审流程,不能仅依据页面生成结果判断业务已经完整。

在线表单、流程与门户

在线表单和表单设计能力用于配置字段、页面展示和数据录入;流程设计能力用于构建业务审批流程;门户设计能力用于组合企业应用入口。README 同时提到 BPM(Business Process Management)工作流能力,说明这部分不仅是静态页面配置,还涉及流程模块的运行。

在典型使用路径中,管理员先定义数据模型和表单,再配置流程节点、参与角色及菜单入口,最终由业务用户提交数据并进入流程。资料没有给出具体流程 DSL、节点接口签名或状态机定义,因此集成开发时应以项目源码和官方文档为准。

报表与大屏

项目集成了 JimuReport 报表和 JimuBI 大屏能力,用于报表设计、数据展示和可视化页面构建。报表或大屏的输入通常包括数据源、字段、查询条件和展示组件,输出是可访问的报表页面或大屏页面。

README 没有提供报表查询性能、并发上限、数据量上限或具体图表配置格式。对于生产场景,应在目标数据库、网络拓扑和数据权限策略下单独验证,而不能根据“支持报表与大屏”推导性能指标。

AI 应用平台与模型管理

AI 应用平台包含 AI 应用管理、模型配置、智能聊天、流程编排、MCP 和插件等模块,并兼容 ChatGPT、DeepSeek、Ollama 等模型或模型服务。其基本链路是:配置模型连接信息,选择或创建 AI 应用,再由聊天、工作流或插件调用模型能力。

资料没有提供各模型服务的具体版本、鉴权协议、请求超时参数或模型成本控制规则。部署时应将 API 密钥、模型地址和访问范围作为敏感配置管理,具体字段以当前版本文档和源码为准。

AI 知识库问答

知识库功能基于大型语言模型和 RAG(Retrieval-Augmented Generation,检索增强生成)技术,覆盖知识库管理、文档解析、向量库对接和精准检索。文档首先进入解析与索引流程,检索组件召回相关内容,再将上下文交给模型生成回答。

仓库的 Docker Compose 配置包含一个名为 jeecg-boot-pgvector 的 pgvector 服务,并设置数据库名为 vector_db,这为向量数据存储提供了本地编排入口。README 未说明支持的文件格式、切分策略、向量模型、召回指标和知识库容量,因此这些细节不能从 Compose 文件直接推断。

系统架构与关键模块

项目采用前后端分离架构,并同时支持单体与微服务部署模式。仓库结构将后端、前端、移动端适配框架和底层 starter 分开维护,便于按项目需要选择部署方式和裁剪示例模块。

模块或目录 职责 资料中明确的技术或能力
jeecg-boot 后端源码 Spring Boot 4、Shiro、MyBatis、Spring Cloud Alibaba;支持单体与微服务切换
jeecgboot-vue3 前端源码 Vue 3、TypeScript、Vite、Ant Design Vue
jeecg-uniapp 移动端开发框架 一套代码适配 APP、小程序、H5、鸿蒙
jeecg-boot-starter 底层封装组件 微服务启动、xxljob、分布式锁、RabbitMQ、分布式事务、ShardingSphere 分库分表
jeecg-boot-system Compose 中的系统服务 构建上下文为 ./jeecg-boot/jeecg-module-system/jeecg-system-start,容器端口 8080
jeecg-vue Compose 中的前端服务 构建上下文为 ./jeecgboot-vue3,通过 Nginx 对外映射端口 80

权限模块是系统级基础能力之一,README 明确列出用户、角色、组织、菜单、数据字典、消息和定时任务,并支持按钮权限、数据权限和表单字段等颗粒化控制。实际授权关系、菜单编码和数据权限表达方式不在给定资料中,二次开发时需要以源码和官方开发文档核对。

依赖与运行环境

项目后端技术栈包括 Spring Boot 4、Spring Cloud Alibaba 和 MyBatis-Plus,前端技术栈包括 Vue 3、TypeScript、Vite 和 Ant Design Vue。README 同时提到 Shiro、MyBatis 和单体/微服务切换,说明具体模块可能还依赖仓库中的底层封装和部署配置。

Docker Compose 文件定义了 MySQL、Redis、后端系统、Vue 前端和 pgvector 五类服务。MySQL 对外映射为宿主机端口 13306,后端系统映射为 8080,前端映射为 80;Redis 和 pgvector 在该文件中没有启用宿主机端口映射。

  • 数据库服务:服务名为 jeecg-boot-mysql,使用仓库中的构建上下文 ./jeecg-boot/db
  • 缓存服务:服务名为 jeecg-boot-redis,镜像标签为 registry.cn-hangzhou.aliyuncs.com/jeecgdocker/redis:5.0
  • 向量服务:服务名为 jeecg-boot-pgvector,镜像名为 registry.cn-hangzhou.aliyuncs.com/jeecgdocker/pgvector
  • 容器网络:Compose 创建名为 jeecg_boot 的网络,服务通过该网络互相访问。

资料没有提供完整的操作系统版本、Docker Engine 版本、Node.js 版本、Java 版本或 Maven 版本要求。官方仓库未提供该信息,建议以最新 README 和对应版本的开发环境文档为准。

快速开始

给定资料提供了 Docker 单体模式启动入口和默认账号信息,因此本节只给出本地或测试环境的最小闭环。生产环境不应直接沿用示例中的默认密码、数据库口令和未加固的端口暴露方式。

安装:获取源码

首先准备 Docker 环境并获取仓库源码。下面的命令只操作本地工作目录,不包含面向外部目标的扫描或远程变更。

Bash
git clone https://github.com/jeecgboot/JeecgBoot.git
cd JeecgBoot

运行:启动 Compose 服务

仓库根目录包含 docker-compose.yml,其中已经定义了数据库、缓存、后端、前端和向量服务。使用 Compose 启动时,后端服务依赖 MySQL 和 Redis 的健康检查;配置文件中的 depends_on 会在依赖服务健康后再启动系统服务。

Bash
docker compose up -d

如果本地 Docker 环境使用的是旧版 Compose 命令形式,官方仓库未提供该命令兼容性说明,建议以当前 Docker 文档和仓库最新 README 为准。启动过程中的镜像构建、拉取和健康检查日志可用于确认服务是否完成初始化。

验证:访问本地前端

Compose 文件把前端容器的 80 端口映射到宿主机 80 端口,把后端系统的 8080 端口映射到宿主机 8080 端口。启动完成后,可在本地浏览器访问 http://localhost,并使用 README 给出的默认账号 admin/123456 登录测试。

Bash
docker compose ps
curl http://localhost
curl http://localhost:8080

上述验证只检查本地端口是否能返回内容,资料没有规定接口返回体格式,因此不能据此断言所有业务模块已经可用。登录后应进一步检查菜单、数据库连接、Redis 连接和需要模型服务的 AI 功能。

配置说明

Compose 文件是当前资料中最完整的配置样例,适合用于理解服务名称、端口和基础凭据。下表只列出文件中真实出现的字段;未在资料中出现的参数不作补充。

字段名 类型 默认值 作用
MYSQL_ROOT_PASSWORD 字符串 root 设置 MySQL root 用户密码
MYSQL_ROOT_HOST 字符串 % 设置 MySQL root 用户允许访问的主机范围
TZ 字符串 Asia/Shanghai 设置 MySQL 容器时区
jeecg-boot-mysql.ports 列表 13306:3306 将宿主机 13306 映射到容器 3306
jeecg-boot-mysql.command 列表 见 Compose 文件 设置字符集、排序规则、时间戳、大小写和认证插件等 MySQL 启动参数
jeecg-boot-redis.image 字符串 registry.cn-hangzhou.aliyuncs.com/jeecgdocker/redis:5.0 指定 Redis 镜像
jeecg-boot-system.ports 列表 8080:8080 将宿主机 8080 映射到后端容器 8080
jeecg-boot-pgvector.POSTGRES_DB 字符串 vector_db 设置 pgvector 使用的数据库名称

Compose 文件还设置了 MySQL 字符集为 utf8mb4、排序规则为 utf8mb4_general_ci,并设置了 max_allowed_packet=128M 等启动参数。修改这些配置前,应同步检查应用连接配置和已有数据兼容性;资料没有提供完整的应用配置键名,因此不应凭经验补写未知字段。

进阶用法

进阶使用的重点是从可运行样例进入源码级开发,而不是简单增加配置项。README 给出了单体模式、微服务模式、精简版本和 AI Skills 等路径,团队可以按部署复杂度与开发范围选择。

  • 单体开发:使用后端与前端源码进行本地调试,适合先验证业务模型、权限和页面生成结果。
  • 微服务部署:README 提供 IDEA 和 Docker 的微服务启动入口,适合需要按服务拆分部署的项目;具体服务划分和注册配置以官方文档为准。
  • 裁剪 Demo:官方资料建议参考精简版本文档删除不需要的 Demo,形成更符合业务边界的代码基线。
  • 移动端扩展:jeecg-uniapp 支持 APP、小程序、H5 和鸿蒙适配,但移动端构建与发布细节不在给定资料中。
  • 底层能力复用:jeecg-boot-starter 提供微服务启动、xxljob、分布式锁、RabbitMQ、分布式事务和 ShardingSphere 分库分表等封装,使用前应确认所需模块及其配置方式。

AI Skills 的安装入口是官方提供的“一键安装 Claude Code + JEECG Skills”页面。该页面涉及外部工具和模型调用,使用时应单独审查生成代码、提示词内容、模型数据流向和企业内部数据是否允许离开本地环境。

可观测性与运维

给定 Compose 文件已经提供了 MySQL、Redis 的健康检查,并让后端依赖这两个健康状态启动;这可以降低容器启动顺序导致的直接失败。它不等同于完整的生产监控体系,资料没有给出指标、日志格式、链路追踪、告警规则或备份策略。

启动状态检查

本地排障可以先观察服务状态和容器日志,再确认端口映射是否符合配置。下面的命令只读取本地 Compose 状态和日志。

Bash
docker compose ps
docker compose logs --tail=100 jeecg-boot-mysql
docker compose logs --tail=100 jeecg-boot-redis
docker compose logs --tail=100 jeecg-boot-system
docker compose logs --tail=100 jeecg-vue

如果 MySQL 健康检查未通过,先检查数据库容器日志和本地端口冲突;如果后端未启动,重点核对 MySQL、Redis 是否已经达到健康状态。官方仓库未提供完整故障码对照表、日志字段定义和运维 SLA,建议以最新文档及实际日志为准。

安全与合规边界

该项目涉及账号、组织、权限、业务数据、知识库文档和大模型调用,部署时应把授权范围、数据流向和凭据保护放在功能验证之前。本节只讨论经过授权的本地、测试或企业内部环境,不提供面向未授权目标的攻击、绕过检测或数据窃取方法。

  • 默认凭据:README 给出默认账号 admin/123456,仅用于初始本地验证;部署到共享或生产环境前必须修改,并核查是否还存在其他默认账户。
  • 数据库凭据:Compose 文件直接写入 MYSQL_ROOT_PASSWORD: root,且 root 主机范围为 %。这属于测试配置,不应未经评估直接暴露到不受信任网络。
  • 端口隔离:文件对外映射了 80、8080 和 13306;Redis、pgvector 没有宿主机端口映射。实际部署应依据网络分区和访问需求决定是否继续暴露这些端口。
  • 模型与知识库:上传文档、聊天内容、提示词和检索上下文可能包含个人信息或企业机密。资料没有说明模型供应商的数据保留策略,接入前应完成组织内部隐私和合规评估。
  • 权限验证:平台支持按钮、数据和表单字段等权限控制,但权限设计不能替代数据库最小权限、网络隔离、日志审计和备份恢复制度。

如果 AI Skills 或模型插件要访问企业内部系统,应只授予明确授权的接口和最小数据范围,并在测试环境验证生成代码与工具调用结果。具体安全响应流程、漏洞披露政策和合规认证信息,官方仓库未提供该信息,建议以最新仓库公告和组织内部制度为准。

许可证与商用条款

仓库 LICENSE 文件明确为 Apache License 2.0。该许可证授予永久、全球范围、非独占、免版税且不可撤销的版权许可,并包含符合条件的专利许可条款;同时规定了分发、修改和衍生作品相关条件。

因此,从许可证文本看,Apache License 2.0 允许在符合许可证条件的前提下使用、修改、复制和分发项目,商业使用并未被许可证本身排除。分发修改版或衍生作品时,应遵守 LICENSE 中关于版权声明、许可证文本、修改说明和专利条款等要求;具体义务以仓库 LICENSE 为准。

本文不对商标、第三方依赖许可证、商业支持、托管服务、模型服务费用或企业采购条款作额外承诺。使用者还应检查项目依赖及所接入组件的独立许可证,不能只依据主仓库许可证完成全部合规判断。

局限性与已知限制

项目资料展示了较完整的功能范围,但并未提供可用于容量规划的统一基准。尤其是并发数、数据库规模、知识库文档数量、向量检索延迟、模型调用成本、可用性目标和生产 SLA,均不在给定资料中。

  • AI 生成内容需要人工审查,README 描述了手工合并和 AI 修改流程,但没有保证生成代码适用于所有复杂业务。
  • 不同大模型的上下文长度、接口协议、计费方式和数据保留规则没有在资料中统一说明。
  • Compose 示例包含明文测试凭据,适合本地验证,不应直接作为生产安全基线。
  • 资料同时出现“解决 80%”和“解决 90%”重复工作两种说法,不能把任一数字视为经过独立验证的项目性能指标。
  • 官方仓库未提供完整的升级兼容矩阵、回滚方案、灾备手册和全量环境变量清单,升级前应先阅读对应版本说明。

根据本文作者的经验判断,低代码生成结果越接近标准 CRUD,越容易纳入统一评审和持续交付;涉及复杂领域规则时,应把生成器定位为初始实现工具,而不是替代设计、测试和安全评审的机制。

适合谁

以下信号同时满足较多时,选择该项目更有现实依据。判断重点是团队已有技术栈、业务模块类型和部署方式,而不是单纯关注功能数量。

  1. 团队已有 Java 业务开发能力,并且愿意维护 Spring Boot、MyBatis-Plus、Vue 3 等源码。
  2. 项目包含较多表单、列表、权限、审批、报表或管理后台模块,希望减少重复 CRUD 开发。
  3. 组织需要把 AI 聊天、知识库、流程编排或 MCP 插件纳入同一套企业应用平台。
  4. 团队接受“生成后审查、手工合并、持续扩展”的开发方式,而不是要求所有业务都由配置完全覆盖。
  5. 项目需要在单体和微服务部署模式之间进行选择,并希望保留源码级定制能力。

不适合谁

如果下列限制是硬性要求,使用前应先进行专项验证,必要时选择已有内部平台或其他方案。这里的判断基于资料边界与实现维护要求,并不代表项目在所有场景下都不可用。

  1. 团队不具备 Java、前端、数据库和容器运维能力,却要求对生成代码承担长期生产责任。
  2. 项目要求已验证的固定并发指标、明确 SLA、灾备等级或容量上限,而当前资料未提供这些数据。
  3. 业务规则高度依赖复杂事务、跨系统一致性或大量非标准交互,无法接受生成结果进入人工重构流程。
  4. 组织禁止任何业务数据、提示词或知识库内容进入外部模型服务,但又没有本地模型和隔离部署方案。
  5. 团队只需要一个极简静态页面或单一 API 服务,不希望引入用户、角色、菜单、数据库、缓存和应用平台模块。

常见问题与排查(FAQ / Troubleshooting)

常见问题主要集中在首次启动、端口占用、健康检查、默认账号和 AI 数据配置。排查时先区分“容器未启动”“应用未连接依赖”和“业务功能未配置”三类问题。

为什么访问 http://localhost 没有页面?

先执行 docker compose ps 查看 jeecg-vue 是否处于运行状态,再查看其日志。Compose 将宿主机 80 映射到前端容器 80;如果宿主机 80 已被其他服务占用,官方仓库未提供自动改端口的配置说明,需要在本地配置中谨慎调整并同步验证。

为什么后端服务没有启动?

后端服务依赖 MySQL 和 Redis 的健康检查。检查 jeecg-boot-mysqljeecg-boot-redis 的状态和日志;MySQL 健康检查使用 mysqladmin ping,Redis 健康检查使用 redis-cli ping

默认账号是什么?

README 给出的默认账号密码是 admin/123456。该信息仅适合首次本地验证,公共环境、共享测试环境和生产环境都不应继续使用默认凭据。

为什么 AI 知识库不能直接问答?

知识库功能除了平台模块本身,还涉及模型配置、文档解析、向量库和检索链路。Compose 仅提供名为 jeecg-boot-pgvector 的 pgvector 服务,并创建 vector_db 数据库;模型连接、文档格式和索引参数未在给定资料中列明,应查阅 AI 应用手册。

如何从单体切换到微服务?

README 提供了 IDEA 启动前后端的微服务方式和 Docker 微服务方式链接,但给定资料未列出完整切换命令、服务清单或配置文件。不要仅凭单体 Compose 文件推断微服务部署结构,应按照官方微服务文档操作。

项目地址与资源

以下链接均来自仓库资料或 README 中列出的官方站点,可用于获取源码、文档、演示和 AI Skills 说明。版本、安装方式和兼容性以对应页面当前内容为准。