PlantUML代码执行时序图
时间: 2025-02-04 15:15:42 浏览: 92
### 使用 PlantUML 创建时序图
#### 定义参与者
在创建时序图之前,定义参与交互的对象是必要的。这些对象被称为参与者,在PlantUML中使用`participant`关键字来声明。
```plantuml
participant "Web Browser" as WB
participant "Server" as S
```
此段代码定义了两个参与者:“Web Browser”和“Server”,并分别为它们设定了简短的标签WB和S以便后续引用[^5]。
#### 发送消息
一旦参与者被定义好之后,就可以开始描述他们之间的互动过程。这通常涉及到一方给另一方发送消息的动作。在PlantUML里,这种动作可以通过箭头符号来表达:
```plantuml
WB -> S: Request Page Load
S --> WB: Send HTML Document
```
这里展示了浏览器向服务器请求页面加载的过程以及服务器响应HTML文档的消息传递方式。
#### 添加激活期
为了更清晰地展示某个时间段内哪个参与者处于活跃状态,可以利用activate命令标记活动区间:
```plantuml
WB -> S: Request Resource
activate S
S --> WB: Return Resource Data
deactivate S
```
这段脚本说明了当资源请求发生时,服务端进入工作模式直到返回数据完成为止[^3]。
#### 自动化循环结构
如果存在重复性的交互行为,则可采用loop语句简化书写复杂度:
```plantuluml
loop every 1 second
WB -> S: Polling Status Update
S --> WB: Respond with Latest Info
end loop
```
以上实例模拟了一个每隔一秒就会发生的轮询更新机制[^4]。
#### 整合示例
下面给出一个完整的例子,综合运用前面介绍过的各个要素构建出一张较为复杂的时序图:
```plantuml
@startuml
title Web Application Interaction Sequence Diagram
actor User
participant "Web Client" as WC
participant "Application Server" as AS
participant Database as DB
User -> WC: Open Website URL
WC -> AS: HTTP GET /index.html
AS --> WC: Response Index Page Content
WC -> AS: Submit Login Form
activate AS
AS -> DB: Verify Credentials
DB --> AS: Return Authentication Result
deactivate AS
AS --> WC: Redirect to Dashboard or Error Message
loop Periodic Health Check Every Minute
AS -> DB: Query System Metrics
DB --> AS: Provide Metric Values
end loop
@enduml
```
这张图表描绘了一位用户访问网站登录流程中的主要步骤,包括打开网址、提交表单验证身份直至最后周期性健康检查等一系列操作[^1]。
阅读全文
相关推荐



















