zoukankan      html  css  js  c++  java
  • UML绘图工具——PlantUML

    1 简介

    PlantUML是一个开源项目,支持通过简单直观的语言来定义以下UML图。

    • 时序图
    • 用例图
    • 类图
    • 活动图
    • 组件图
    • 状态图
    • 对象图
    • 部署图
    • 定时图

    支持生成图片格式有:

    • PNG
    • SVG
    • LaTeX
    • ASCII艺术图 (只针对时序图)

    2 应用场景

    • 在线使用。在图床网站上,使用文本语言生成图片链接。

    • 离线使用

      • 在IDE或者在线仓储中集成

        • AndroidStudio
        • Eclipce
        • Intellij IDEA
        • Sublime
        • GitLab
      • 独立生成图片。在命令行下从文本生成图片。

    3 示例

    3.1 离线独立生成UML图

    (1)安装命令

    sudo apt install plantuml
    sudo apt install -y graphviz default-jre
    chmod +x plantuml.jar
    

    (2)编写图片脚本

    以下是一个区块链消费2-3多签UTXO的序列图。

    @startuml
    participant "2-3共享钱包
    (用户1)" as 用户1
    participant "2-3共享钱包
    (用户2)" as 用户2
    participant "2-3共享钱包
    (用户3)" as 用户3
    
    用户1 -> 用户1 : 多签转账 
    activate 用户1
    
    用户1 -> 用户1 : 根据转账要求创建多签交易(未签名)
    activate 用户1
    deactivate 用户1
    
    用户1 -> 用户1 : 对交易签名 
    activate 用户1
    
    用户1 -> 用户2 : 发送多签交易(未签名),请求签名  
    deactivate 用户1
    
    用户2 -> 用户2 : 授权签名
    activate 用户2
    
    用户2 -> 用户1 : 将签名发送给用户1
    deactivate 用户2
    
    
    用户1 -> 用户1 : 组合用户1,2的签名,生成签名交易
    activate 用户1
    deactivate 用户1
    
    用户1 -> 用户1 : 验证多重签名
    activate 用户1
    deactivate 用户1
    
    用户1 -> 用户1 : 将签名交易广播到链上
    activate 用户1
    deactivate 用户1
    
    deactivate 用户1
    @enduml
    

    (3)命令行生成图片

    调用PlantUML工具生成图片。

    java -jar plantuml.jar sequenceDiagram.txt
    

    图片如下:

    img

    4 引用

  • 相关阅读:
    人月神话阅读笔记03(完)
    人月神话阅读笔记02
    各种前端好用的在线工具、学习网站、插件
    垂直居中css
    输入框判断表情的输入js
    jq九宫格抽奖
    移动端中一像素的解决方案
    获取url地址栏中的参数数据
    ios中getTime()的兼容性问题
    清除Css中select的下拉箭头样式
  • 原文地址:https://www.cnblogs.com/sword03/p/9999512.html
Copyright © 2011-2022 走看看