头条-Forge-vs-JeecgBoot.md 11 KB

Forge Admin vs JeecgBoot:低代码方向完全不同,别选错了

选低代码平台时,90%的人只看star数。但50K star的JeecgBoot和Forge Admin,低代码方向完全不同,选错了后面全是坑。

我一个朋友去年用JeecgBoot接了个SaaS项目,上线三个月后发现多租户数据隔离不够深,接口安全也没做好,最后硬着头皮重构了权限层。不是JeecgBoot不行,是用错了地方。

今天这篇文章,把两个框架掰开揉碎了对比。看完你就知道该选谁。

(配图建议:两个框架Logo并列对比图,中间加vs字样)


一、低代码理念——BPM流程驱动 vs 协议驱动

这是两个框架最底层的分水岭。

JeecgBoot的低代码是BPM流程驱动的。核心路径是:在线配置表单→代码生成器生成前后端代码→手工Merge到项目里。它的低代码最终产物是什么?是代码文件。所以它的口号叫"AI生成→OnlineCoding→代码生成→手工Merge"。

Forge Admin走的是协议驱动路线。核心是一套JSON Schema协议——modelSchema定义数据模型,pageSchema定义页面编排。低代码的最终产物是什么?是JSON协议,不是代码。页面由运行时引擎按协议动态渲染。

对比维度 JeecgBoot Forge Admin
驱动方式 BPM工作流驱动 JSON Schema协议驱动
核心路径 在线配置→代码生成→手工Merge AI生成→向导搭建→协议渲染
最终产物 代码文件(需手工合并) JSON协议(运行时直接渲染)
建表方式 Online表单在线配置 ModelDesigner浏览器端设计
页面模板 单表/树表/主子表 SimpleCrud/TreeCrud/MasterDetail三模板

这里有个关键差异:JeecgBoot生成的代码你要自己合并到项目里,改完再生成就要处理冲突;Forge的协议是纯数据,改了配置页面直接变,页面和代码彻底解耦。

做短期项目,代码生成快;做长期产品,协议驱动可维护性强。

(配图建议:两个框架的低代码流程图对比,JeecgBoot侧标注"产出:代码文件",Forge侧标注"产出:JSON协议")


二、代码生成——一键生成全部代码 vs AI生成配置+模板渲染

代码生成器是JeecgBoot的看家本领。

JeecgBoot的代码生成器是真的强:在线配置好表结构,一键生成Controller、Service、Mapper、Entity、Vue页面,全套前后端代码直接可用。然后你手工Merge到自己的项目里。

Forge Admin的路线完全不同。它的代码生成是AI生成配置+Velocity模板渲染:AI生成的是一个AiCrudConfig配置JSON(不是代码),然后用28个Velocity模板把配置渲染成规范化的代码包,你下载下来直接用。

对比维度 JeecgBoot Forge Admin
生成方式 在线配置→一键生成 AI生成配置→模板渲染→下载
生成内容 Controller/Service/Mapper/Entity/Vue全套 规范代码包(模板统一结构)
AI角色 AI辅助描述需求 AI生成配置JSON,不生成代码
代码结构 生成即最终代码 模板渲染保证统一规范
安全注解 需手动添加 4类安全注解自动注入

核心区别:JeecgBoot生成的是最终代码,你要手工Merge,代码风格取决于生成器版本;Forge生成的是模板渲染的规范化代码+AI生成的配置JSON,代码结构统一可控。

换句话说,JeecgBoot是"AI帮你把代码写好",Forge是"AI帮你把配置写好,模板帮你把代码写好"。


三、数据权限——颗粒度与扩展性

数据权限是企业级项目的硬需求。两个框架都做了,但深度完全不同。

JeecgBoot基于RBAC模型,支持行级、列级、字段级数据权限。常规的后台管理项目完全够用。

Forge Admin在这方面下了狠功夫:定义了7大DataScopeType——ALL(全部)、SELF(本人)、ORG(本组织)、ORG_AND_CHILD(组织及子组织)、CUSTOM(自定义)、TENANT_ALL(租户全部)、REGION(行政区划)。

对比维度 JeecgBoot Forge Admin
权限模型 RBAC,行级/列级/字段级 7大DataScopeType
行政区划权限 不支持 支持(REGION),省级=全部放行
实现层 业务层过滤 JSqlParser在Mapper层SQL改写
跳过机制 DataScopeContextHolder.isSkip()
配置化 SysDataScopeConfig表存储规则

Forge最狠的一招是在Mapper层用JSqlParser改写SQL。不是在Service层加过滤条件,而是直接在你的SQL的WHERE子句里动态拼接权限条件。这意味着无论你怎么写SQL,权限都绕不过去。同时兼容MyBatis-Plus分页的_mpCount查询,不会漏掉。

如果你的业务涉及行政区划数据权限(政府项目很常见),JeecgBoot需要自己扩展,Forge原生支持。


四、多租户——插件 vs 深度集成

多租户是SaaS产品的命门。

JeecgBoot支持SAAS多租户,作为平台特性存在。

Forge Admin的做法是深度集成到SQL层:MyBatis-Plus多租户插件+JSqlParser自动在SQL中注入tenant_id条件。但这还不是最关键的,最关键的是五级忽略策略

优先级 策略 说明
1 上下文标记 TenantContextHolder运行时动态标记
2 配置白名单 17张系统表默认忽略
3 手动注册 代码级动态添加忽略表
4 自动扫描 检测表有无tenant_id列,无则自动跳过
5 注解驱动 @IgnoreTenant注解+切面
对比维度 JeecgBoot Forge Admin
多租户实现 平台特性级 SQL层注入+五级忽略策略
线程传递 TransmittableThreadLocal
严格模式 支持(无法确定租户时抛异常)
动态忽略 executeIgnore()函数式编程
自动检测 autoDetectTenantColumn自动跳过无租户列的表

第五级自动扫描特别实用:你引个第三方表,表里没有tenant_id字段,Forge自动跳过注入,不会报错。JeecgBoot需要手动配置。

做SaaS产品的话,Forge的多租户方案是经过深思熟虑的——不是"支持多租户",而是"多租户渗透到每一行SQL"。

(配图建议:五级忽略策略的金字塔层级图,从上到下排列)


五、安全能力——各有侧重

安全这块,两个框架的思路差异很大。

JeecgBoot用的是Shiro/Spring Security+JWT,颗粒化权限控制,菜单权限、按钮权限、数据权限都到位了,满足常规企业级需求。

Forge Admin在API安全层面做了大量工作:

对比维度 JeecgBoot Forge Admin
认证框架 Shiro/Spring Security Sa-Token
接口加解密 RSA密钥协商+SM4/AES+RequestBodyAdvice
防重放攻击 ReplayTokenCache+nonce机制
文件鉴权 时效URL+私有文件权限校验
分布式幂等 3策略+SpEL键生成+Redisson锁

Forge的接口加解密流程设计得很完整:客户端先拿RSA公钥→生成本地SM4/AES会话密钥→RSA加密后传给服务端→后续请求全部用会话密钥加解密。再加上防重放的nonce机制,API安全性直接拉满。

分布式幂等也有三套策略:STRICT(严格拒绝重复,适合支付)、RETURN_CACHE(返回缓存结果,适合查询)、TOKEN_REQUIRED(先拿Token再提交,适合表单)。

如果你做的是一般企业后台,JeecgBoot的安全能力够了。但如果是金融、政务、支付类场景,Forge在API安全上的投入是实打实的。


六、AI集成——广度 vs 深度

AI这块最容易被误解。很多人一看JeecgBoot的AI功能列表就觉得很全,但你要看AI是"贴上去的"还是"长进去的"。

JeecgBoot的AI覆盖很广:AI对话助手、知识库、流程编排、AI建表、AI写作,Skills矩阵很丰富。但本质上是功能层面的叠加——AI是一个独立模块,帮你做一些事情。

Forge Admin的AI是深度嵌入核心流程的:

对比维度 JeecgBoot Forge Admin
AI定位 功能模块叠加 核心流程嵌入
AI供应商 DeepSeek/通义千问/ChatGPT等 OpenAI/DeepSeek/Ollama等多供应商统一接入
AI+低代码 AI辅助描述需求 AI直接生成crudConfig JSON驱动页面
AI+大屏 AI辅助设计 AI生成大屏配置,独立子项目
工程化 熔断器+客户端缓存+流式输出

Forge的AI不做"聊天助手"这种外围功能。它做的是:你用自然语言描述需求→AI生成低代码配置JSON→运行时引擎直接渲染页面。AI不是帮你"加速开发",AI本身就是开发流程的一环。

另外Forge的AI集成有完整的工程化考虑:多供应商统一接入接口、熔断器防止AI服务挂了拖垮系统、客户端缓存减少重复调用、流式输出优化体验。

简单说:JeecgBoot的AI是全(覆盖面广),Forge的AI是深(嵌入核心链路)。


总结:到底选谁?

别和稀泥,直接给结论:

选JeecgBoot,如果你:

  • 需要BPM工作流+表单设计器做OA/审批类系统
  • 项目周期短,独立开发快速出活
  • 业务以流程驱动为主,对多租户和安全没有极致要求
  • 想要一个功能全面的"全家桶",什么都有

选Forge Admin,如果你:

  • 做SaaS产品,多租户+数据权限+接口安全需要深度集成
  • 团队协作开发长期产品,代码结构统一可控比"一键生成"更重要
  • 想用AI深度驱动低代码,而不是把AI当聊天助手
  • 做金融/政务/支付等高安全场景
  • 需要行政区划级数据权限

一句话总结:JeecgBoot是流程驱动的全能选手,Forge Admin是协议驱动的深度玩家。一个做广度,一个做深度。


你正在用什么后台框架?评论区聊聊你的选型经历,踩过哪些坑。

项目地址:

Forge Admin:

JeecgBoot: