PlantUML + VS Code

PlantUML 使用实例

文章目录

    • [PlantUML 使用实例](#PlantUML 使用实例)
      • [1. PlantUML简介](#1. PlantUML简介)
        • [1.1 什么是PlantUML](#1.1 什么是PlantUML)
        • [1.2 PlantUML优势在哪](#1.2 PlantUML优势在哪)
      • [2. 怎么用](#2. 怎么用)
        • [2.1 环境依赖](#2.1 环境依赖)
        • [2.2 VS Code组件安装](#2.2 VS Code组件安装)
      • [3. 常用语法](#3. 常用语法)
        • [3.1 标记开始结束](#3.1 标记开始结束)
        • [3.2 声明参与者](#3.2 声明参与者)
        • [3.3 声明关系](#3.3 声明关系)
        • [3.4 对消息序列编号](#3.4 对消息序列编号)
        • [3.5 组合消息](#3.5 组合消息)
      • [4. 实例](#4. 实例)

1. PlantUML简介

1.1 什么是PlantUML

PlantUML是一个用来快速绘制UML图的Java类库,支持常用的大部分UML图包括:时序图、用例图、类图、对象图、活动图、组件图、部署图、状态图、定时图,还支持这些非UML图:实体联系图、JSON数据、YAML数据、网络图、线框图形界面、架构图、规范和描述语言(DSL)、Ditaa图、甘特图、思维导图、WBS工作分解图等。

1.2 PlantUML优势在哪

使用广泛,生态成熟,目前PlantUML已经被集成到很多脚本和文档工具,可以满足一次编写到处转换

  • 文本编辑器和IDE:

  • 支持多编程语言协作:

  • 其他支持

2. 怎么用

这里以visual studio code举例

2.1 环境依赖

PlantUML的组件是plantuml.jar,所以要运行必须配置java环境

官网下载后安装:https://www.oracle.com/cn/java/technologies/downloads

下载安装后记住安装目录,配置java的环境变量

创建JAVA_HOME


配置Path

完成配置后,保存

打开CMD,输入javac

配置完毕

2.2 VS Code组件安装

安装成功后,配置plantUML server

打开plantuml extension的配置

找到server,这里可以配置在线的server,也可以自己安装一台server

在线server:https://www.plantuml.com/plantuml/uml/SyfFKj2rKt3CoKnELR1Io4ZDoSa70000

安装组件Graphviz Preview

3. 常用语法

plantuml 教程地址:https://plantuml.com/zh/

上面有完善的plantuml语法教程

3.1 标记开始结束

以@startuml开始,@enduml结束

如果是在vs code里面记得用```plantuml,把源码包起来

3.2 声明参与者
  • participant(参与者),使用最多
  • actor(角色)
  • boundary(边界)
  • control(控制)
  • entity(实体)
  • database(数据库)
  • collections(集合)
  • queue(队列)
3.3 声明关系

使用->和-->表明指向关系

3.4 对消息序列编号

使用autonumber对消息进行编号,也可以指定从某个数字开始

3.5 组合消息
  • alt/else
  • opt
  • loop
  • par
  • break
  • critical
  • group, 后面紧跟着消息内容

alt和loop用的最多

4. 实例

plantuml 复制代码
@startuml
participant Participant as Foo order 1
actor       Actor       as Foo1 order 2
boundary    Boundary    as Foo2
control     Control     as Foo3
entity      Entity      as Foo4
database    Database    as Foo5
collections Collections as Foo6
queue       Queue       as Foo7

autonumber 3
Foo -> Foo1 : To actor 
Foo -> Foo2 : To boundary
loop
    Foo -> Foo3 : To control
end
alt 
    autonumber 5.1
    Foo -> Foo4 : To entity
else
    Foo -> Foo5 : To database
end

Foo -> Foo6 : To collections
Foo --> Foo7: To queue
@enduml
plantuml 复制代码
@startuml
participant abc as d

participant eeee as e

autonumber
d -> e: 测试消息

e --> d: 回复消息

autonumber 13.1
d -> e: 13.1
e -> d: 13.2

alt 条件一
    d ->e :
else 条件二
    d ->e :
else 条件三
    d ->e:
end


loop
d -> e:
end
@enduml
相关推荐
Yang.999 小时前
基于Windows系统用C++做一个点名工具
c++·windows·sql·visual studio code·sqlite3
喵~来学编程啦3 天前
【软件工程】一篇入门UML建模图(类图)
软件工程·uml
WXDWIN.3 天前
C++语言之模版与类型转换
c语言·开发语言·c++·visualstudio·visual studio code
卷卷的小趴菜学编程3 天前
时间类的实现
c语言·开发语言·数据结构·c++·算法·visual studio code
梁辰兴3 天前
Enterprise Architect 16 下载、安装与无限30天操作
uml·安装教程·下载·enterprise·architect·ea·16
成工小白4 天前
丹摩征文活动|丹摩智算平台下的YoloV8模型训练与测试实践
linux·yolo·uml·类图
oioihoii4 天前
UML中类图的介绍与使用
c++·设计模式·c#·uml
Eric_见嘉7 天前
真的能无限试(白)用(嫖)cursor 吗?
前端·visual studio code
heilai49 天前
workerman的安装与使用
c++·websocket·http·php·phpstorm·visual studio code
FreeLikeTheWind.10 天前
UML概述、类图关系及连接线表示
uml