乐于分享
好东西不私藏

idea插件:PlantUML画图工具

idea插件:PlantUML画图工具

如果你平时用 IDEA 写代码,只需安装一个 PlantUML 插件,就能用「代码」快速生成各类 UML 图,修改时只需改代码,图自动同步,堪称画图神器 。

一、为什么用 PlantUML?

  • 高效快捷:用简单的文本语法替代拖拽,不用调整元素位置,写代码就像写笔记,几分钟就能画出规范的图;

  • 无缝集成 IDEA:不用切换工具,在 IDEA 里就能完成画图、编辑、导出,和代码、文档完美联动;

  • 易于维护:图和代码一样支持版本控制(Git),修改时只需改文本,无需重新绘制,团队协作更高效;

  • 功能强大:支持时序图、类图、流程图、用例图等几乎所有 UML 图表,还能画架构图、思维导图,满足日常所有画图需求;

  • 免费开源:无版权限制,插件免费安装,无需付费就能使用全部功能。

二、IDEA 安装 PlantUML 插件

PlantUML 本身是一个开源工具,我们在 IDEA 中使用,只需安装对应的插件,分「在线安装」和「离线安装」两种方式,优先推荐在线安装,一步到位。

方式1:在线安装(推荐,需联网)

  1. 打开 IDEA,进入设置界面:Windows/Linux 点击顶部菜单栏「文件」→「设置」;Mac 点击「IntelliJ IDEA」→「偏好设置」;

  2. 在左侧菜单找到「插件」,在搜索框中输入PlantUML,找到对应插件,插件全名称为:plantuml4idea

3. 点击「安装」按钮,等待插件下载完成,然后重启 IDEA 生效(重启后插件才会正常加载);

4. 在「设置」中搜索plantuml,可对其进行配置修改

方式2:离线安装(无网络环境适用)

  1. 前往 JetBrains 插件官网(https://plugins.jetbrains.com),搜索「PlantUML integration」,下载对应 IDEA 版本的插件压缩包(.zip 格式);

  2. 打开 IDEA 插件设置界面,点击右上角齿轮图标,选择「从磁盘安装插件」;

  3. 选中下载的压缩包,点击「确定」,安装完成后重启 IDEA 即可。

三、用 PlantUML 画第一幅图(时序图为例)

插件安装完成后,我们就可以开始画图了。所有 PlantUML 图表都遵循「文本语法+自动渲染」的逻辑,核心结构非常简单,先从最常用的「时序图」入手。

步骤1:创建 PlantUML 文件

  1. 打开 IDEA 中的项目(空项目或已有项目均可),在项目目录上右键 →「新建」→「文件」;

  2. 文件名后缀必须为 .puml 或 .plantuml(比如 demo.puml),后缀错误会导致无法渲染图表;

  3. 双击打开创建的 demo.puml 文件,进入编辑界面。

步骤2:编写 PlantUML 基础语法

所有 PlantUML 图表都有固定的开头和结尾:@startuml(图表开始)和 @enduml(图表结束),中间填写具体的图表语法。

我们以「用户登录接口交互流程」为例,编写时序图代码,直接复制到编辑区:

@startuml
' 这是单行注释(用单引号开头)
actor 用户
participant 前端页面 as Frontend
participant 后端API as Backend
database 数据库 as DB

' 交互流程:用 -> 表示实线(请求),--> 表示虚线(响应)
用户 -> Frontend: 输入用户名和密码,点击登录
Frontend -> Backend: POST /api/login(携带账号密码)
Backend -> DB: 查询用户信息(根据用户名)
DB --> Backend: 返回用户数据(存在/不存在)
Backend --> Frontend: 返回登录结果(成功/失败)
Frontend --> 用户: 显示登录状态(跳转首页/提示错误)
@enduml

步骤3:生成并查看图表

  1. 在代码编辑区右键,选择「Diagrams」→「Show Diagram」(快捷键:Ctrl+Shift+U);

  2. 弹出图表预览窗口,就能看到自动生成的时序图,支持缩放、拖动、导出等操作;

  3. 如果想实时预览,可以安装「PlantUML Preview」插件,安装后编辑区右侧会自动显示预览窗口,无需手动触发。

四、实战案例

案例1:类图

类图用于展示类的属性、方法,以及类与类之间的继承、关联关系,适合设计实体类、接口时使用。

@startuml
' 类的定义:- 表示私有属性/方法,+ 表示公有属性/方法
class User {
 - String name  ' 私有属性
 - int age
 + User(String name, int age)  ' 公有构造方法
 + String getName()  ' 公有方法
 + void setName(String name)
}

class Student extends User {
 - String studentNo  ' 子类特有属性
 + void study()  ' 子类特有方法
}

class Teacher extends User {
 - String teacherNo
 + void teach()
}
@enduml

⚠️ 技巧:如果已有 Java 类,无需手动写代码!在 Java 类编辑区右键 →「Diagrams」→「Show PlantUML Diagram」,IDEA 会自动生成对应的类图代码,直接复用即可。

案例2:流程图

流程图适合梳理线性业务逻辑(比如订单支付流程、接口校验流程),核心是用不同的符号表示流程节点。

@startuml
' 流程节点:start 开始,end 结束,if 判断,operation 操作
start
:用户提交订单;
:校验订单信息(金额、商品状态);
if (信息校验通过?) then (是)
  :扣减商品库存;
  :生成支付订单;
  :跳转支付页面;
else (否)
  :提示错误信息;
  :返回订单页面;
endif
:流程结束;
end
@enduml

案例3:用例图

用例图用于展示系统中不同角色(用户、管理员)与系统功能的对应关系,适合需求分析时使用。

@startuml
left to right direction

' 角色定义
actor 普通用户 as User
actor 管理员 as Admin

' 系统功能(用例)
usecase "登录系统" as uc1
usecase "查看个人信息" as uc2
usecase "管理用户" as uc3
usecase "发布内容" as uc4

' 角色与用例的关系
User --> uc1
User --> uc2
User --> uc4
Admin --> uc1
Admin --> uc3
@enduml

五、进阶技巧

1. 样式定制

可以通过 skinparam 命令修改图表样式,比如背景色、字体、箭头颜色,解决中文显示方框的问题:

@startuml
' 解决中文显示方框,设置默认字体
skinparam defaultFontName Microsoft YaHei
' 修改背景色
skinparam backgroundColor #D5F5F5
' 修改时序图箭头颜色
skinparam sequenceArrowColor #2196F3
' 修改类图边框颜色
skinparam classBorderColor #2CAF50

' 后续图表代码...
actor 用户
participant 系统
用户 -> 系统: 发送请求
@enduml

2. 图表导出(适配文档、汇报)

生成图表后,可导出为 PNG、SVG、PDF 等格式,插入到文档、PPT 中:

  1. 在图表预览窗口右键,选择「Export Diagram」;

  2. 选择需要的导出格式(推荐 PNG 用于文档,SVG 用于高清汇报),设置保存路径,点击「OK」即可。

3. 常用语法速记

  • 注释:' 单行注释/' 多行注释 '/

  • 箭头:-> 实线(请求),--> 虚线(响应),->> 实线双箭头;

  • 参与者:actor(人形),participant(普通),database(数据库);

  • 类关系:extends(继承),implements(实现);

  • 流程图节点:start(开始),end(结束),if(判断),:(操作)。

4. 常见问题

  • 图表无法渲染:检查文件后缀是否为 .puml,网络是否畅通(在线模式),插件是否重启生效;

  • 中文显示方框:添加 skinparam defaultFontName Microsoft YaHei 配置字体;

  • 图表太大/太小:用 scale 0.8(缩小)或 scale 1.2(放大)调整尺寸。

本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » idea插件:PlantUML画图工具

评论 抢沙发

7 + 9 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
×
订阅图标按钮