当前位置: 首页 > ops >正文

一文讲透:如何用AI生成时序图

📌 用 AI 工具自动分析 Java 代码,生成标准化的时序图,再也不用手动画图了!本文教你用 VS Code + Trae 插件 + MermaidChart 一键搞定。


🧰 准备工作

你只需要准备以下工具:

  • VS Code(代码编辑器)

  • Java 项目源码

  • Trae VS Code 插件(自动生成 Mermaid 时序图语法)

  • MermaidChart(在线绘图工具)Mermaid Chart - Create complex, visual diagrams with text. A smarter way of creating diagrams.


🧱 Step 1:在 VS Code 中导入 Java 项目

  1. 安装 VS Code 并确保 JDK 环境配置正常;

  2. 打开 VS Code,安装官方推荐的 Java Extension Pack

  3. 导入你的 Java 项目(确保 src/pom.xmlbuild.gradle 存在);

  4. 项目能正常识别结构和方法调用即可。


⚙️ Step 2:安装并使用 Trae 插件生成时序图

  1. 打开 VS Code,进入扩展商店(Extensions,快捷键 Ctrl+Shift+X);

  2. 搜索并安装 Trae 插件;

  3. 打开你希望分析的 Java 源码文件;

  4. 右键点击方法名,选择 "Trace Method with Trae"

  5. 插件会分析该方法的调用路径,并生成 Mermaid 格式的 sequenceDiagram 脚本;

  6. 默认输出结果会在一个 .mmd.md 文件中展示(可以在 VS Code 预览)。

打开需要绘制时序图的java/cpp文件,在Trae插件中,输入要绘制的方法名,点击发送,生成mermaid语法的内容.

生成的内容如下:

sequenceDiagramparticipant App as 应用层participant Manager as CarRadioManagerparticipant TunerSessionparticipant HAL as Radio HALApp->>Manager: getAmLevel()activate ManagerManager->>Manager: checkCarRadioIsNull()alt 服务可用Manager->>TunerSession: getAmLevel()activate TunerSessionTunerSession->>TunerSession: checkTunerSessionIsCreated()alt HAL会话存在TunerSession->>HAL: getParameters(PARAMETER_AM_LEVEL)activate HALHAL-->>TunerSession: 返回VendorKeyValue列表deactivate HALTunerSession->>TunerSession: 解析参数值(0-255)alt 参数有效TunerSession-->>Manager: 返回信号强度值else 参数无效TunerSession-->>Manager: 返回-1endelse HAL会话不存在TunerSession-->>Manager: 返回-1enddeactivate TunerSessionelse 服务不可用Manager-->>App: 返回-1endManager-->>App: 返回AM信号强度deactivate Manager

🖼️ Step 3:使用 MermaidChart 绘制时序图

  1. 打开 Mermaid Chart - Create complex, visual diagrams with text. A smarter way of creating diagrams.

  2. 将 VS Code 中生成的 Mermaid 代码复制粘贴进去;

  3. 立即可视化出调用链路时序图;

  4. 可导出为 PNG、SVG、PDF 等格式,用于文档、汇报、技术设计说明。


🔧 Mermaid 时序图语法示例(Trae 输出)

把生成的Mermaid 语法复制到网站的输入框,点击右侧空白自动渲染.导出绘制好的png图片.
http://www.xdnf.cn/news/8168.html

相关文章:

  • 六:操作系统虚拟内存之帧分配
  • 鸿蒙Flutter实战:23-混合开发详解-3-源码模式引入
  • MaskGIT:掩码图像生成经典方法
  • Github超19k+ strar的实时协同编辑的开源框架yjs
  • 楼宇智能照明控制系统设计与实现(基于组态软件)
  • Ubuntu更新源服务器时出现:pk-client-error-quark
  • 抖音IP属地跟无线网有关吗?如何更改
  • 从LCD1602显示实验看嵌入式仿真教学平台如何革新高校实践教育
  • “人工智能+多学科”选题思路,2025热点AI+(180个)
  • Linux进程信号(五)之捕捉信号
  • 已将析构函数隐式定义为“已删除”错误
  • 场景化应用实战系列六:检索问答系统
  • VisionPro_几何学工具
  • 大模型讲师叶梓培训提纲《基于知识库的大模型应用》
  • Linux Systemd 管理java服务
  • Java微服务架构:Spring Cloud全栈指南,附最新Demo源码,可独立运行!
  • 新能源汽车核心元器件深度解析
  • 装备制造企业如何解决项目管理难题?
  • 应用案例 | 集成Docker,解锁 HMI/网关的定制化应用
  • LeetCode:贪心算法
  • MySQL三种备份方式介绍
  • 完全背包模板
  • sqlserver数据库查询执行慢的sql、查询隔离级别、设置快照模式、查询锁表进程、锁表sql、解锁等
  • 30.第二阶段x64游戏实战-认识网络数据包发送流程
  • 网络安全-等级保护(等保) 3-1 GB/T 28448-2019 《信息安全技术 网络安全等级保护测评要求》-2019-05-10发布【现行】
  • Mujoco 学习系列(四)官方模型仓库 mujoco_menagerie
  • 道可云人工智能每日资讯|谷歌搜索正式引入AI模式
  • OpenCv高阶(十七)——dlib库安装、dlib人脸检测
  • Docker 挂载策略:何时使用临时容器拷贝默认配置,何时直接挂载?
  • 3.9/Q1,GBD数据库最新文章解读