5 个 PlantUML 常用图模板(复制就能用)
同上,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 图、组件图、思维导图)的话留言。