专题 · Topics
每一期专题以一个核心话题为线索,把零散在源码、注解、模块里的 Erupt 能力,串成一条可读、可上手、可对位竞品的叙事。
节奏:约每月一期。

每期专题首发于此,另有版本动态、源码解读、社区精选案例。回复「加群」加入用户群,回复「入门」获取 5 分钟上手指南。
历史文章 · Archive
注解里写的不是字符串,是有语法的代码
画布党最爱的反驳是"注解就是把 SQL 写成没高亮的哑字符串"。Erupt 押反向——用 JetBrains @Language 往自己的注解属性里注入 10 种嵌入式语言(hql/sql/VTL/markdown/java…),一行 sql="..." 在 IntelliJ 里有高亮、补全、报错;@Comment 再让同一个属性对人和 AI 都自描述。
ByteBuddy × JsonAnnotationProxy × @EruptDataProcessor:我们做了设计器,但它编译成一个真 @Erupt 类
在线表单设计器几乎都把设计稿存成一份 JSON DSL,运行时靠解释器渲染。erupt-designer 押反向:设计稿在运行时被 ByteBuddy 编译成一个真正的 @Erupt 类,复用与手写实体完全相同的管线——Gson、反射、校验、DataProxy、@EruptFlow,无重启、无生成代码、无解释器。
@Power × SHA512+Salt × PowerHandler:低代码的"安全"不该是上线前才补的那一栏
国内后台框架的安全是"配齐再上线"——RBAC、按钮权限、密码加密都是清单上的待办项。Erupt 押反向:安全是注解默认值。@Power 的 export/importable 默认 false,PowerHandler 在运行时收口,密码 MD5→SHA-512+盐 在改密时自动平滑迁移,无停机、无 rehash 脚本。
注解 × Spring × Git:史上最可控的低代码——没有"生成"这个动词
国内低代码 = 拖拽画布 / Node.js 在线脚本,给业务运营用。Erupt 押的是反向那条路——做给后端工程师的低代码:注解就是配置,扩展点都是 Spring Bean,真理在 Git 里,框架不向你源码目录写一个字节;17 个 LLM + A2A + Memory + @AiToolbox 是默认依赖,不是 AI 加件。
让 BI 看板自己回答"为什么变了"——Erupt Cube × LLM 的新姿势
传统 BI 给你"是什么",Erupt Cube × LLM 给你"为什么"。@EruptCube 注解定义语义层,LLM 在领域模型旁边长出三只眼睛(cubeList → cubeMetadata → cubeQuery),自己写 SQL、出图、写归因。这一期把第 01 期的 AI Harness 和第 03 期的"注解派"缝到一起。
当 MyBatis-Plus 还在卷 SQL DSL,Erupt 给 JPA 加了一整圈后台基础设施
一个 @Entity,在 Erupt 里能长出 10 种身份——UI、RBAC、REST API、Auto DDL、i18n、DataProxy、Lambda 查询、AI Agent、流程引擎、跨服务聚合。注解就是配置面,元数据 = UI = API = LLM Tool。
@Erupt × DataProxy × Handler:为什么我们没去做拖拽画布
当钉钉宜搭、简道云、JeecgBoot 全部押注"画布"或"画布生成代码",Erupt 仍然押注源代码本身——一行 @Erupt 注解、一个 DataProxy<T> 扩展点、一组 Handler 接口。这一期讲清楚为什么。
50+ LLM × A2A × Memory:Erupt 的 AI Harness 是怎么长出来的
17 个 provider、A2A 跨 Agent 协议、跨会话 Memory,外加一个 Java 注解就能挂上去的 Tool / MCP 调用——为什么我们认为 Java 后台不该被 ToolJet 那种"AI App Generator"叙事垄断。
想投稿专题?
专题不是发版日志,也不是模块手册——它讲的是一个想法在 Erupt 里如何落地。 如果你在使用 Erupt 时踩出过一条独特路径,欢迎在 GitHub Discussions 提案,被采纳的话我们会以专题形式出版。