一、背景

2026 年 9 月,我在 openEuler 24.03 LTS-SP4 上完整部署了 JeecgBoot 3.8.3。部署过程顺利,但后续使用中逐渐暴露出一系列问题。经过评估,我最终决定升级到 JeecgBoot 3.9.5。

这篇文章记录升级的决策过程,以及随之而来的信创环境重新部署规划。

二、3.8.3 遇到的问题

2.1 安全漏洞

3.8.3 存在多个已公开的安全漏洞:

  • AI Flow 脚本执行 RCE(Issue #9144):脚本节点可执行任意系统命令
  • SVG 存储型 XSS(CVE-2026-8195):影响 3.9.1 及之前版本
  • 权限提升漏洞(CVE-2026-7603):FileDownloadUtils 路径穿越
  • 授权不当(CVE-2025-15119):/sys/sysDepartRole/list 接口

这些漏洞在测试环境风险可控,但生产环境存在隐患。

2.2 功能不足

  • Online 表单不支持多数据源
  • AI 应用能力弱,知识库和流程编排有限
  • JDK 17 兼容适配不完善
  • 启动速度偏慢

2.3 官方升级说明

JeecgBoot 官方文档明确:

JeecgBoot 属于平台级产品,每次升级改动较大,目前做不到平滑升级。

三、3.9.5 的关键改进

3.1 安全加固

3.9.5 针对接口越权、敏感信息、XSS、SSRF、SQL 注入和脚本执行做了专项治理:

  • 修复越权、SQL 注入、RCE、SSRF、存储型 XSS 等漏洞
  • Apache Shiro 从 1.2.5 升级到 3.0.0
  • shiro-redis 从 3.2.3 升级到 4.10
  • 加强 AI Flow 脚本执行风险控制

涉及 CVE 编号 9 个。

3.2 框架升级

  • 完成 Jackson 3、Tomcat 11、JDK 17 兼容适配
  • 新增 Lettuce 支持
  • 完善多数据库兼容(MySQL/Oracle/PG/SQL Server/达梦/KingbaseES)
  • 默认 lazy-initialization 启动,提升启动速度

3.3 Online 表单增强

  • 支持多数据源
  • 支持外部填报
  • AI 生成 Online 表单能力完善
  • Excel 导入支持图片

3.4 AI 应用升级

  • AI 应用支持复制、流程工具封装、插件管理
  • 支持分享 Token 和限流
  • 新增火山方舟接入
  • 新增飞书集成

四、信创环境部署规划

4.1 环境选型

组件选型安装方式
操作系统openEuler 24.03 LTS-SP4系统
JDKJDK 17.0.20(BiSheng 发行版)手动 rpm
数据库PostgreSQL 17.10源码编译
向量扩展pgvector 0.8.6源码编译
缓存Redis 7.4.11源码编译
Web 服务器Nginx 1.28.3源码编译
构建工具Maven 3.9.16 + Node.js 20.18.2手动/系统

4.2 部署架构

openEuler 24.03 LTS-SP4
├── /data (3.3T 数据盘)
│   ├── packages/      # 安装包归档
│   ├── pgdata/        # PostgreSQL 数据
│   ├── redisdata/     # Redis 数据
│   ├── logs/          # 统一日志
│   └── jeecg-upload/  # 文件上传
├── /usr/local/        # 系统盘 (300G)
│   ├── pgsql/         # PostgreSQL 17
│   ├── redis/         # Redis 7.4
│   ├── nginx/         # Nginx 1.28
│   └── jeecg/         # JeecgBoot
└── systemd services

4.3 系列文章规划

本系列共 8 篇,从环境准备到完整部署,逐步搭建信创环境下的 JeecgBoot 3.9.5:

篇号内容说明
第 1 篇为什么从 3.8.3 升级到 3.9.5(本文)决策背景
第 2 篇环境准备:JDK + Maven + Node + 数据盘规划系统基础
第 3 篇Redis 7.4 源码编译与内核参数调优缓存准备
第 4 篇Nginx 1.28 源码编译与反向代理配置Web 准备
第 5 篇PostgreSQL 17 源码编译 + pgvector + SQL 转换数据库准备
第 6 篇JeecgBoot 后端编译与 systemd 部署后端上线
第 7 篇JeecgBoot 前端编译与 Nginx 部署前端上线
第 8 篇部署归档与一键恢复方案运维保障

配套文章:

五、总结

从 3.8.3 到 3.9.5,是一次安全驱动的升级。3.8.3 的漏洞在 3.9.5 中系统性修复,Shiro 大版本升级加固了认证体系。同时在 AI 应用、Online 表单和性能方面有明显改善。

这次升级不仅是版本号变化,更是从 MySQL 到 PostgreSQL、从传统部署到信创环境的全面重构。


项目地址:https://gitee.com/dboru/jeecgboot-pg-converter

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐