github jeecgboot/JeecgBoot v3.9.2

4 hours ago

升级日志

v3.9.2 是 JeecgBoot 自 AI 路线开启以来最重的一次版本大升级。 低代码再进化,正式迈入 v2.0 时代——从「拖拉拽」到「一句自然语言」,全线 Skills 加持,一句话即可搭建业务,手工配置成为历史!低代码不再只是「拖拖拽拽生成 CRUD」,一句话创建大屏、一句话搭建 OA 审批、一句话生成整个系统,已在 JeecgBoot 成为现实!本次升级还全面打磨低代码开发体验,涵盖表单、图表、大屏、安全与前端性能的系统性优化,同步开放 Online 前端源码,并新增 Online 图表大模块。

✨ 本次发布的"高度"

1. Skills:让 AI 真正成为你的开发搭档
  • Claude Code Skills 接入低代码:代码生成、Online 表单、报表、大屏、流程全面对接 Claude Skills,无需手动操作代码生成器——AI 一句话生成代码、一句话生成整个系统、一句话创建 Online 表单、一句话创建 Online 报表、一句话设计大屏、一句话配置字典、创建菜单并完成授权,全部触手可及。
2. AI 应用大优化
  • Chat2BI / Chart2BI 对接 Online 表单:一句话生成分页表格、报表与图表配置,数据分析链路全程打通。
  • AI 流程编排能力大爆发:新增变量读写、记忆检索、循环变量、结构化 JSON 输出、提示词表关联、文件上传起点节点等,AiFlow 已进化为一套完整的可视化 Agent 编排平台。
  • AI 应用工具白名单 + 跨租户隔离:能力开放与权限管控并举,SaaS 多租户安全边界筑牢。
  • 配套上线 AI 助手联网搜索AI 流程搜索引擎节点,让 AI 流程既能「会用工具」,也能「会查资料」。
  • Langchain4j 1.12.2升级:Java AI 应用能力边界重新定义——AI 助手不再依赖人工提示词盲调接口,也支持 Skills 元数据自动选择并调用业务能力。
3. AI多模态生产力(图 / 音 / 视频 / 换衣)
  • 真实的 AI 生成 音频 / 视频 / 图片,不再是 Demo
  • AI 换衣 同时输出图片与视频
  • 谷歌生图模型、本地语音合成、混图示例 全部到位
  • 模型矩阵补齐:VLLM / Xinference / LMStudio / qwen-vl-ocr / qwen3.5-plus / 通义千问 / 千帆
4. Online 三件套(表单 / 报表 / 图表)一次性优化
  • Online 模块前端源码完全开源,AI 时代用户可自由灵活扩展,二次开发无门槛
  • 新增 Online 图表大模块,快速配置图表面板,为用户提供更多可视化选择
  • 新增 LongText 字段类型link_table / link_table_field 类型(Vue3 一对多关联记录、跨表字段引用)
  • 子表支持分类字典树与自定义字典树,层级数据配置更灵活
  • 解决多年顽疾:Online 配置卡顿(QQYUN-14177)Online 打开慢小屏字段定位不可见 等体验痛点全面修复
  • 新增 Online 表单 Schema 规范文档,为 AI 深度理解 Online 元数据夯实基础
5. 全面按需加载,前端瘦身
  • antd / unplugin-icons / Jvxetable / Vxetable / TinyMCE / JEasyCron / codemirror / 聊天模块 全部按需加载
  • 首屏体积与加载速度显著下降,为 AI 助手在线入驻业务页面铺平道路
6. 安全加固
  • AI 海报 SSRF(#9579AI 附件路径遍历(#9519AiragApp 跨租户写入(#9462Token 越权(#9518RCE #9335 等多个高危漏洞集中修复
  • MCP / 底层敏感工具 全面加上权限校验

🎯 低代码 v2.0 时代,意味着什么?

Skills 让低代码平台沉淀的表单、流程、报表、大屏,自动成为 AI 可直接调用的业务能力——无需手写 Tool、无需二次开发,自然语言即可驱动全套业务流程自动化执行,甚至一句话生成整个系统。

维度 v3.9.1 及以前(拖拉拽时代) v3.9.2(一句话时代)
低代码定位 表单 / 流程 /代码生成 / 报表和大屏设计 AI Native 的业务能力出口
交互方式 拖拉拽 + 手工配置 一句自然语言,搞定一切
业务搭建 手动拖组件、配字段、设流程 一句话设计表单,画流程 / 报表 / 大屏 / 菜单
AI 用法 完全手工搭建:手动配表单、画流程、建关联、配菜单、逐步授权 AI 一句话搭表单、画流程、绑关联、建菜单、完成授权,一条龙搞定
业务接入 AI 需二次开发手写 Tool Online 表单 / 流程节点 = 天然 Skill
多模态 仅文本 文本 / 图像 / 音频 / 视频 /Skills 全模态覆盖
安全 漏洞分散修复 专项漏洞修复 + 权限管控 + 租户隔离加固

Skills 功能模块(全新独立仓库 jeecgboot/skills)

与 v3.9.2 主版本同步发布的全新独立仓库 jeecgboot/skills —— 基于 Claude Code 的 AI 技能集合,用自然语言驱动,一句话生成代码、表单、流程、报表、图表、大屏、仪表盘

仓库基础信息
  • 适配:JeecgBoot 3.x/2.x
  • 依赖:Python 3.12+,Claude Code
  • 模型:官方 Claude / DeepSeek-v4 / MiniMax 2.7 三套方案任选
JeecgBoot 六大 Skills
  • jeecg-codegen:代码生成器 —— 自然语言生成全套 CRUD(Java + Vue3 + SQL)
  • jeecg-onlform:Online 表单生成器 —— 元数据驱动创建 CRUD 表单
  • jeecg-onlreport:Online 报表生成器 —— SQL 驱动的数据报表
  • jeecg-desform:设计器表单生成器 —— 支持截图识别生成表单 JSON
  • jeecg-onlchart:Online 图表生成器 —— 自动生成数据可视化图表
  • jeecg-bpmn:BPM 流程生成器 —— 自动生成 Flowable BPMN XML 审批流程
JimuReport 三大 Skills
  • jimureport:积木报表生成器 —— 多类型报表 + 截图识别生成
  • jimubi-bigscreen:大屏生成器 —— 1920×1080 全屏数据可视化
  • jimubi-dashboard:仪表盘生成器 —— 24 列栅格布局数据看板

AI 应用

大特性
  • DeepSeek 最新大模型 deepseek-v4 兼容 #9585
  • AI 助手支持联网搜索
  • AI 流程新增搜索引擎节点
  • Langchain4j 新版支持 Agent Skills,重新定义 Java AI 应用的能力边界
  • langchain4j 升级到 1.12.2 版本
  • jeecg-boot-starter-chatgpt 更名为 jeecg-boot-starter-ai
  • AI 生成视频页面(含视频生成服务及接口实现)
  • AI 生成音频页面
  • AI 换衣功能可生成图片和视频
  • 视频生成做成真实功能
  • 语音生成做成真实功能
  • 支持谷歌生图模型
  • AI 绘画
  • 支持本地语音合成
  • AI 知识库支持网页类型知识库
  • 【issues/8143】知识库能够自定义分词参数
  • 创建知识库时可创建分段策略,知识库内文档默认沿用
  • 商品导购应用加入应用门户
AI 流程 (AiFlow)
  • 新增变量读取 / 变量赋值 / 记忆检索 / 记忆写入节点
  • 开始节点支持上传文件
  • LLM 节点支持结构化输出 JSON 对象
  • LLM 节点对接提示词表,可直接关联提示词
  • LLM 节点关联提示词必须选择后才切换,避免用户未关联直接使用
  • 新增循环变量节点
  • 循环节点支持暴露循环体内节点变量
  • AI 流程知识库写入支持分段策略
  • 节点需要应用时展示选应用下拉框
  • 工具调用节点展示 MCP 暂不支持的提示
  • 优化调试展示,先跳到追踪页,结束跳转结果页
  • 支持发布后只读查看节点配置
  • 新增拖拽新增节点
  • 流程编排 HTTP 请求超时时间设置了未生效 #9533
  • 修复调试时记忆节点找不到记忆库 ID
  • 自定 SQL 语句前后有空格时无法执行
  • 修复删除连线按钮错位
  • 修复记忆写入节点样式问题
  • 修改添加字段弹窗的最小高度避免出现滚动条
AI 聊天 / 智能体
  • 智能体里调用的工具过程也可以显示出来
  • 智能体加上"是否显示工具调用过程"
  • 工具调用结果展示新增滚动条
  • AI 模型未激活或不可用时直接使用平台底层默认模型
  • 平台默认聊天支持图片
  • 聊天无法交互、无法输入提示
  • 聊天界面没有提示准确信息
  • 采用系统默认聊天,图片生成成功但日志不应提示"模型未激活"
  • AI 应用调用工具后继续问答会导致报错
  • AI 写作应该以"回复"来生成而非以"内容"
  • Chat2BI 生成分页 table、支持导出报表
  • Chart2BI 对接 Online 表单
  • AI 改成异步,支持切换菜单
  • 视频实际已生成完却报错
  • 修复点击终止按钮后后台日志仍继续输出
  • 优化 AI 工具调用异常处理,统一翻译为友好提示
  • 优化 API 账户余额不足提示信息
  • AI 门户提示模型未激活
  • 样式优化,字体小一号
  • 海报链接替换
  • 图像变形
  • 混图增加示例
  • 混图表单尺寸修改
AI 模型对接
  • 【issues/9359】支持 VLLM
  • 支持 LMSTUDIO
  • 向量模型支持 HTTP 1.1 协议
  • 【issues/9314】建议优化 Xinference 支持
  • 已激活模型增加"取消激活"
  • 【issues/8】激活 qwen-vl-ocr 模型报错(增加扩展配置)
  • 【issues/9446】qwen3.5-plus 新版本 API 需开启 incremental_output
  • 【PR#9539】通义千问 API 不接受 null 消息内容
  • #9374】千帆向量报错添加异常处理防止空指针
  • 注释绘画模型必填,采用默认模型,绘画 id 不必填
AI 知识库 / RAG / 记忆 / 变量
  • 【issue/9418】AI 知识库上传文件太大向量化失败
  • 【issues/9402】文档向量化文件名中文乱码导致失败
  • 【issues/9551】HTML 表格向量化分段被截断
  • 【issues/9551】macOS 压缩包隐藏文件过滤(.__MACOSX/.DS_Store 等)
  • 修复向量化时自定义分段器空白文本段异常
  • 【issues/9455】AI 应用中设定的 RAG 参数未生效
  • 【AI 记忆】强化 query_memory 触发时机描述,避免 LLM 在未查询时直接反问用户
  • 记忆库不需要分段策略
  • 【AI 变量】支持批量更新变量,返回结构化结果避免 LLM 重复调用
MCP / Skills / Tool
  • #9483】给 MCP 加上权限校验
  • MCP 查询接口暂时不加权限
  • #9464】修复未授权用户调用底层敏感工具
  • 微服务nginx部署openApi接口访问不到 #9590
安全漏洞
  • 【issues/9579】AI 海报图片下载 SSRF 漏洞,校验拒绝 loopback / link-local
  • 【issues/9519】AI 附件处理路径遍历漏洞:规范化路径并强制校验沙箱范围
  • zip 文件 filePath 以 \ 或 / 开头被 Path.resolve 当成驱动器根路径误判
  • 【issues/9462】修复 AiragAppController.edit 跨租户数据写入漏洞
  • 【issue/9518】修复 SysUserController.getUserSectionInfoByToken 越权漏洞
  • 【issues/9431】【issues/9429】文件地址漏洞问题
  • 【issues/9424】CommandExecUtil 路径遍历
  • 【issues/9425】EmbeddingHandler 路径遍历
  • 【issues/9421】buildUrl 路径遍历漏洞
  • #9335】远程命令执行 (RCE) 漏洞
杂项
  • AiragChatServiceImpl.java 编译错误,使用 instanceof 替代类型比较
  • 演示系统三个账号作废
  • 同步开源的异常流关闭
  • 大屏设计器支持AI助手

Online 表单

配置 / 体验优化
  • 开放 Online 前端源码
  • 新增 Online 图表大模块
  • Online支持启用外部链接,支持以外部表单方式开放访问,用户可通过链接直接进入表单完成数据填报及修改操作。
  • Online 配置页面修改
  • Online 配置新增字段排在系统字段之前
  • 子表隐藏一些扩展配置
  • 一对多他表字段需能选择所有字段
  • 一对一 / 一对多编辑和详情他表字段没值
  • Online 一对多增加关联记录和他表字段
  • Vue3 Online 一对多新增 link_table、link_table_field 两种类型
  • 【issues/7633】Online 子表支持分类字典树、自定义字典树
  • 子表支持分类字典树和自定义字典树控件
  • Online 配置中尽可能多显示 Vxetable 字段
  • Online 配置整体优化
  • Online 配置界面字段配置卡顿
  • 解决 Online 打开慢的问题
  • 解决字段定位在小屏幕上看不见
  • 字典放在页面属性 tab 中
  • 图标本地化
  • 支持配置独立的省、市、县
  • #9366】Online 表单新增 LongText 类型
  • 数字类型超出 JS 数值范围加提示
  • 渲染字典有大量警告
  • 优化删除确认提示内容和样式
  • 新增 Online 表单 Schema 规范文档
Bug 修复
  • 【issues/9307】下拉加载表字典需滚动加载
  • Online 详情单独的省市没显示
  • 点击展开全部时树节点没全部展开
  • Online 配置生成数据按钮点击无效
  • Online 授权弹窗警告
  • 开发环境数据权限看不到数据,生产正常
  • 【issues/9452】Online 样式影响到了主项目
  • 【issues/9414】一对一子表设置 label 长度不生效
  • 【issues/9336】列宽拖动不了
  • 【issues/9265】多选查询使用模糊查询,字典含 1、10 时按 1 查询会带出 10
  • Online JS 增强修改下拉不生效
  • Jvxetable / Vxetable 按需加载
Online 报表 / 图表
  • Online 图表使用系统变量报错
  • 修复动态数据源解析时未填写 OrderBy 报错
  • #9468】修复不完整黑名单和数据源端点权限缺失导致的 JDBC URL 注入

前端

按需加载(性能)
  • 按需加载 codemirror
  • Jvxetable / Vxetable 按需加载
  • TinyMCE 富文本、JEasyCron、JLinkTableCard 异步加载
  • Vue3 聊天按需加载改造
  • basicForm 中的自定义组件改成按需
  • 新增 unplugin-icons 插件,icon 支持 online / local 两种模式
  • antd 采用 unplugin-vue-components 实现按需加载
  • JCronValidator 从 Form 中注释,防止首页加载,改为业务中导入
  • 首页不加载 AppSearch 等
  • 登录页注册、二维码登录、忘记密码组件动态加载
  • 兼容 Vxetable 引入到了页面也不报错
  • Jvxetable 改成按需后不允许内部引用,否则页面卡死
通用组件
  • 升级积木报表到最新版
  • 升级积木BI大屏到最新版,支持支持 AI 助手
  • 【issues/9326】ApiSelect 返回数据中包含 options 字段名导致渲染失败
  • 【issues/9448】滚动时 TinyMCE 下拉打开则隐藏
  • 【issues/9511】弹窗高度自适应(含全屏问题及对流程弹窗影响的还原)
  • 【issues/9405】顶部混合导航模式下点击一级菜单时,最后一级是隐藏路由显示不对
  • 【issues/9212】JVxeTypes.popup 中属性 param 传参后弹框数据为空
  • #9370】j-vxe-table 列表编辑,使用 slot 后表头不显示编辑图标
  • Jvxetable 下拉搜索点击无反应
  • Vxetable 自定义树和分类字典树组件选完后变非编辑模式时先闪现 id
  • 修复 Jvxetable 使用 fixed 固定后无法拖拽
  • Jvxetable 优化
  • 使用日期、级联等组件出现警告
  • iframe 支持麦克风权限
用户 / 部门 / 选人
  • 【JHHB-1278】用户组件支持部门、岗位、用户组
  • 用户选择新组件部门多时滚动展示不全
  • 用户组添加用户查询时需要模糊查询
  • 部门用户组件搜索功能修改
  • 【JHHB-1402】通知公告选人组件全屏操作底下有空白
  • 【JHHB-1401】通知公告按部门选择接收人,部门下人员不全
  • 【JHHB-1400】Web 端笔记本审批选择下一步操作人,左侧部门列表滚动加载不全
系统消息
  • 【JHHB-1340】系统消息需要显示消息发送时间
  • 【JHHB-1390】PC 端消息列表下方有空白(Edge / Chrome 都有)
  • 【JHHB-1239】PC 端即时通讯消息需要闪烁提示
  • 【JHHB-1410】新闻中心添加置顶、范围设置
  • 【JHHB-1389】审批角色管理搜索审批角色后列表未加载数据
  • 【JHHB-1189】PDF 打印时把流程业务标题作为 PDF 文件名
  • 【Github #8855】修复文件预览路径处理问题,filePath 需先通过 getFileAccessHttpUrl 拼接完整 URL 再编码
  • 系统消息弹窗内容高度显示异常
  • 删除单表实例页面中假的高级查询按钮

Don't miss a new JeecgBoot release

NewReleases is sending notifications on new releases.