5 个 PlantUML 常用图模板(复制就能用)

puml.online

同上,AI 辅助起草的样例文章。模板本身是开箱即用的;正文你可以根据需要重写。

1. 时序图(Sequence)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@startuml
title 用户登录流程
actor 用户
participant "前端" as FE
participant "API 网关" as GW
participant "认证服务" as Auth
participant "用户服务" as UserSvc

用户 -> FE: 输入用户名密码
FE -> GW: POST /login
GW -> Auth: 验证 token
Auth -> UserSvc: 查询用户
UserSvc --> Auth: 返回用户信息
Auth --> GW: token 有效
GW --> FE: 200 OK + JWT
FE --> 用户: 跳转首页
@enduml

要点:participant 别名避免文字过长;-> 实线、--> 虚线回包。

2. 类图(Class)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
@startuml
class User {
-id: Long
-email: String
-createdAt: DateTime
+login(): boolean
+logout(): void
}

class Order {
-id: Long
-userId: Long
-total: BigDecimal
-status: OrderStatus
+pay(): void
+cancel(): void
}

User "1" --> "*" Order : places
Order ..> User : belongs to
@enduml

要点:用 -/+/# 表示 private/public/protected;--> 关联、<|-- 继承、*-- 组合、o– 聚合、..> 依赖。

3. 用例图(Usecase)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
@startuml
left to right direction
actor "用户" as U
actor "管理员" as A

rectangle 系统 {
U --> (浏览商品)
U --> (下单)
U --> (查看订单)
(下单) ..> (支付) : include
A --> (管理商品)
A --> (处理退款)
}
@enduml

要点:include 是必含子用例,extend 是可选扩展。

4. 状态图(State)

1
2
3
4
5
6
7
8
9
10
@startuml
title 订单状态机
[*] --> 待支付 : 创建订单
待支付 --> 已支付 : 支付成功
待支付 --> 已取消 : 用户取消 / 超时
已支付 --> 已发货 : 商家发货
已发货 --> 已收货 : 用户确认
已收货 --> [*]
已取消 --> [*]
@enduml

要点:用 [*] 表示起点/终点;note right of 状态名 : 说明 可以加注释。

5. 活动图(Activity)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
@startuml
title 文章发布流程
start
:撰写草稿;
:语法检查;
if (检查通过?) then (是)
:保存草稿;
:通知审稿人;
else (否)
:显示错误;
stop
endif
:审稿人审核;
if (审核通过?) then (是)
:发布文章;
else (否)
:打回修改;
stop
endif
stop
@enduml

要点:if (...) then (...) else (...) endif 是分支;switch/while/repeat 都有对应语法。


怎么预览这些模板

  • 本站在线编辑器(即将上线):直接复制粘贴,右边实时预览
  • VSCode:装 PlantUML 扩展,Alt+D 预览当前文件
  • 命令行plantuml -tpng diagram.puml 生成 PNG

需要更多模板(ER 图、组件图、思维导图)的话留言。

  • 标题: 5 个 PlantUML 常用图模板(复制就能用)
  • 作者: puml.online
  • 创建于 : 2026-07-15 16:35:00
  • 更新于 : 2026-08-14 21:34:29
  • 链接: https://puml.online/blog/plantuml-templates/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。