PlantUML语法(全)及使用教程-时序图

目录

    • 1. 参与者
      • 1.1、参与者说明
      • 1.2、背景色
      • 1.3、参与者顺序
    • 2. 消息和箭头
      • 2.1、 文本对其方式
      • 2.2、响应信息显示在箭头下面
      • 2.3、箭头设置
      • 2.4、修改箭头颜色
      • 2.5、对消息排序
    • 3. 页面标题、眉角、页脚
    • 4. 分割页面
    • 5. 生命线
    • 6. 填充区设置
    • 7. 注释
    • 8. 移除脚注
    • 9. 组合信息
      • 9.1、alt/else/end
      • 9.2、opt 选择
      • 9.3、loop/end 循环
      • 9.4、par/end 并行


1. 参与者

1.1、参与者说明

@startuml participantactor 角色
boundary 边界
control 控制
entity 实体
database 数据库
collections 集合
participant 流程框
queue 队列角色 -> 边界 : To boundary
角色 -> 控制 : To control
角色 -> 实体 : To entity
角色 -> 数据库 : To database
角色 -> 集合 : To collections
角色 -> 流程框 : To participant
角色 -> 队列: To queue@enduml

在这里插入图片描述

1.2、背景色

使用 #颜色英语 关键字来定制参与者的颜色

@startuml participantactor 角色 #yellow
boundary 边界 #red
control 控制 #blue
entity 实体 #gray
database 数据库 #pink
collections 集合 #orange
participant 流程框 #brown
queue 队列角色 --> 边界 : To boundary
角色 -> 控制 : To control
角色 -> 实体 : To entity
角色 -> 数据库 : To database
角色 -> 集合 : To collections
角色 -> 流程框 : To participant
角色 -> 队列 : To queue
@enduml

在这里插入图片描述

1.3、参与者顺序

使用 order 关键字来定制参与者的显示顺序

@startuml participantactor        角色    order 0 #yellow
boundary     边界    order 2 #red
control      控制    order 1 #blue
entity       实体    order 5 #gray
database     数据库  order 4 #pink
collections  集合    order 6 #orange
participant  流程框  order 7 #brown
queue        队列    order 8角色 --> 边界 : To boundary
角色 -> 控制 : To control
角色 -> 实体 : To entity
角色 -> 数据库 : To database
角色 -> 集合 : To collections
角色 -> 流程框 : To participant
角色 -> 队列 : To queue
@enduml

在这里插入图片描述

2. 消息和箭头

2.1、 文本对其方式

箭头上的文本对齐可以用 skinparam sequenceMessageAlign,后接参数left,right或center
!!!默认左对齐!!!
在这里插入图片描述

2.2、响应信息显示在箭头下面

skinparam responseMessageBelowArrow true命令,让响应信息显示在箭头下面。

在这里插入图片描述

2.3、箭头设置

@startuml participant
participant        角色    order 0 #yellow
control      控制    order 1 #blue
participant  流程框  order 7 #brown角色 -> 控制  : 普通箭头(加黑)
角色 ->> 控制 : 普通箭头(不加黑)
角色 -\ 控制  : 普通箭头(上边加黑)
角色 -/ 控制  : 普通箭头(下边加黑)
角色 ->o 控制 : 在箭头后面加一个o
角色 <-> 控制 : 双向箭头流程框 -->角色 :      响应 虚线带有箭头(加黑)
流程框 -->>角色 :     响应 虚线带有箭头(不加黑)
流程框 <-->角色 :     箭头 双向箭头(不加黑)
流程框 <<-->> 角色 :  箭头 双线箭头(不加黑)
@enduml

在这里插入图片描述

2.4、修改箭头颜色

在这里插入图片描述

2.5、对消息排序

1. autonumber 会自动的对信息进步编号;
2. autonumber xx 从指定的数字 xx开始编号;
3. autonumber xx zz 从指定数字 xx 开始编号,每次步长为 zz
4. autonumber stop 暂停使用编号
在这里插入图片描述

3. 页面标题、眉角、页脚

header 页眉毛
footer 页脚 如果想用页码,则加上 %page% of %lastpage%
title 页面标题

在这里插入图片描述

4. 分割页面

newpage 会产生新的一幅图,并且上文提到的 title 只能为第一页写标题,无论你写在哪里,都只能为第一页写标题:

在这里插入图片描述

5. 生命线

  1. ++ 激活目标(可选择在后面加上#color)
  2. – 撤销激活源
  3. ** 创建目标实例
  4. !! 摧毁目标实例
  5. activate 生命活动激活
  6. deactivate 生命活动撤销
  7. destroy 代表生命线摧毁
    在这里插入图片描述

6. 填充区设置

skinparam ParticipantPadding 数值 指定参与者的外边距
skinparam BoxPadding 数值 指定 box 的外边距
skinparam sequenceMessageAlign center 文字对其方式
skinparam handwritten true 开启手写风格
skinparam backgroundColor #颜色RGB 指定背景填充颜色

@startumlskinparam sequenceMessageAlign center
skinparam BoxPadding 10
skinparam ParticipantPadding 10box 'company'
title 页面标题
autonumberparticipant boss
participant dmjxsyactivate boss
boss -> dmjxsy ++  #red :  dmjxsy干嘛呢
dmjxsy -> boss :  在家里
dmjxsy -> dad ++ : 在家吗
deactivate dmjxsy
end boxbox 'family'
autonumber
participant dad
participant momdad -> mom ++  :  吃饭了吗
mom -> dad -- : 还没有
end box
@enduml

在这里插入图片描述
在这里插入图片描述

7. 注释

  1. 在左边添加注释 note left :
  2. 在右边添加注释 note right :
  3. 多行注释,note left /right 多行注释 end note
  4. 在特定参与者添加注释 note left of,note right of或note over
    在这里插入图片描述

8. 移除脚注

hide footbox
在这里插入图片描述

9. 组合信息

序号关键字备注
1alt/else/endif…else
2opt可选项
3loop/end循环
4par/end并行
5break/end中断
6critical/end条件
7group分组

9.1、alt/else/end

在这里插入图片描述

9.2、opt 选择

在这里插入图片描述

9.3、loop/end 循环

在这里插入图片描述

9.4、par/end 并行

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/186063.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

docker的知识点,以及使用

Docker 是一个开源的应用容器引擎&#xff0c;可以让开发者将应用程序及其依赖项打包至一个可移植的容器中&#xff0c;从而实现快速部署、可扩展和依赖项隔离等特性。下面是 Docker 的一些知识点以及使用方法&#xff1a; Docker 的组成部分包括 Docker 引擎、Docker 镜像、Do…

MySQL三大日志详细总结(redo log undo log binlog)

MySQL日志 包括事务日志&#xff08;redolog undolog&#xff09;慢查询日志&#xff0c;通用查询日志&#xff0c;二进制日志&#xff08;binlog&#xff09; 最为重要的就是binlog&#xff08;归档日志&#xff09;事务日志redolog&#xff08;重做日志&#xff09;undolog…

MySQL备份与恢复(重点)

MySQL备份与恢复&#xff08;重点&#xff09; 一、用户管理与权限管理 ☆ 用户管理 1、创建MySQL用户 注意&#xff1a;MySQL中不能单纯通过用户名来说明用户&#xff0c;必须要加上主机。如jack10.1.1.1 基本语法&#xff1a; mysql> create user 用户名被允许连接的主…

ssm+vue的仓库在线管理系统的设计与实现(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频&#xff1a; ssmvue的仓库在线管理系统的设计与实现&#xff08;有报告&#xff09;。Javaee项目&#xff0c;ssm vue前后端分离项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三…

建文工程项目管理软件 SQL 注入漏洞复现

0x01 产品简介 建文工程管理软件是一个适用于工程投资领域的综合型的多方协作平台。 0x02 漏洞概述 建文工程项目管理软件BusinessManger.ashx、Desktop.ashx等接口处存在SQL注入漏洞&#xff0c;攻击者可通过该漏洞获取数据库中的信息&#xff08;例如&#xff0c;管理员后台…

无图谱不AI之三元组数据保存Neo4j

目录 1. 代码学习1.1 源代码1.2 代码解读 没有图谱称为弱人工智能&#xff0c;有图谱的称为强人工智能。 图谱可以让机器学习和人工智能具备推理能力。 1. 代码学习 1.1 源代码 # -*- coding: utf-8 -*- from py2neo import Node, Graph, Relationship# 可以先阅读下文档&a…

微信小程序体验版提交审核,提示接口未配置在app.json文件且无权限

在火狐浏览器 打开微信公众平台 发布小程序 弹窗一闪而过 是因为 放开这里就可以了

RPA机器人如何确保敏感数据的安全性

数据资源作为数字化时代的关键要素&#xff0c;其重要性一直受到高度重视&#xff0c;由此&#xff0c;数据安全也成为企业和个人必须面对的重要问题。随着RPA技术在各个行业的广泛应用&#xff0c;其系统安全性也成了每个企业关注的重中之重。经验丰富的RPA专家可以有效地采取…

已解决!nginx+php上传大文件返回502错误

先说结论&#xff1a;需要修改fpm配置文件&#xff1a; request_terminate_timeout 300 request_terminate_timeout和max_execution_time 有何不同&#xff1f; request_terminate_timeout和max_execution_time是两个不同的PHP配置参数&#xff0c;它们分别控制着不同的执行…

.360、halo勒索病毒来敲门:抗击.360、halo病毒的智慧安全策略

尊敬的读者&#xff1a; 在数字时代&#xff0c;网络威胁层出不穷&#xff0c;而.360、halo勒索病毒正是近期崛起的一位狡诈对手。本文将深度解析.360、halo病毒的毒性攻击方式&#xff0c;为你揭示如何在遭受其加密威胁后迅速自救&#xff0c;同时提供切实可行的预防策略。面对…

python 入门基础(一)

1. python 的程序结构&#xff1a;包、模块、函数。 包里面包含多个模块&#xff0c;模块里面包含多个函数。 3. python的数据结构&#xff1a; 元组 列表 字典&#xff08;仅列出不同于c的地方&#xff09; 4. 模块&#xff1a;一个文件就是一个模块。 模块里面可以包…

网络通信安全的坚固防线双向认证技术详解

目录 什么是双向认证 双向认证的工作原理 双向认证的实现方式 双向认证的重要性 双向认证的挑战 安全最佳实践 小结 什么是双向认证 双向认证&#xff0c;又称为双向身份验证或双向鉴别&#xff0c;是一种在通信双方之间建立信任关系的安全机制。在通信过程中&#xff0…

EI级 | Matlab实现TCN-BiLSTM-Multihead-Attention多头注意力机制多变量时间序列预测

EI级 | Matlab实现TCN-BiLSTM-Multihead-Attention多头注意力机制多变量时间序列预测 目录 EI级 | Matlab实现TCN-BiLSTM-Multihead-Attention多头注意力机制多变量时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.【EI级】Matlab实现TCN-BiLSTM-Multihead-…

特征变换1

编译工具&#xff1a;PyCharm 有些编译工具不用写print可以直接将数据打印出来&#xff0c;pycharm需要写print才会打印出来。 概念 1.特征类型 特征的类型&#xff1a;“离散型”和“连续型” 机器学习算法对特征的类型是有要求的&#xff0c;不是任意类型的特征都可以随意…

docker (简介、dcoker详细安装步骤、容器常用命令)一站打包- day01

一、 为什么出现 Docker是基于Go语言实现的云开源项目。 Docker的主要目标是“Build&#xff0c;Ship and Run Any App,Anywhere”&#xff0c;也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理&#xff0c;使用户的APP&#xff08;可以是一个WEB应用或数据库应…

阿里云Arthas使用——通过watch命令查看类的返回值 捞数据出来

前言 Arthas 是一款线上监控诊断产品&#xff0c;通过全局视角实时查看应用 load、内存、gc、线程的状态信息&#xff0c;并能在不修改应用代码的情况下&#xff0c;对业务问题进行诊断&#xff0c;包括查看方法调用的出入参、异常&#xff0c;监测方法执行耗时&#xff0c;类…

交互思路之“大象冰箱”

前言 是时候往往会思考一些工作的方法论&#xff0c;每个设计师都都自己搭建方法论的思路&#xff0c;笔者更擅长巨像化的设计思路&#xff0c;今天就介绍一个设计思路&#xff1a;如何把大象装进冰箱里&#xff1f; 来源 这个思路来源于宋丹丹与赵本山合作的小品“送水工”…

计算机体系结构----指令系统(二)

本文仅供学习&#xff0c;不作任何商业用途&#xff0c;严禁转载。绝大部分资料来自----计算机系统结构教程(第二版)张晨曦等 计算机体系结构----指令系统&#xff08;二&#xff09; 2.1 指令系统结构的分类2.2 寻址方式2.3 MIPS 指令系统结构2.3.1 MIPS的寄存器2.3.2 MIPS的…

PLC:200smart(13-16章)

PLC&#xff1a;200smart 第十三章2、带参子程序3、将子程序设置成库文件 第十三章 项目ValueValue主程序MAIN一个项目只能有一个&#xff0c;循环扫描子程序SBR_0项目中最多有128个&#xff0c;只有在调用时 才执行&#xff08;子程序可以嵌套其他子程序&#xff0c;最多八层…

SSD-FTL算法学习总结1

SSD核心技术&#xff1a;FTL算法。 1、什么是FTL? FTL是Flash Translation Layer&#xff08;闪存转换层&#xff09;&#xff0c;完成主机&#xff08;HOST&#xff09;逻辑地址空间到闪存Flash物理地址空间的翻译,或者说映射&#xff08;Mapping&#xff09;。 FTL算法分成…