1、安装和使用AmaterasUML

安装AmaterasUML前,需要先安装GEF
采用eclipse在线安装方式安装就好。
eclipse在线安装GEF的地址:http://download.eclipse.org/tools/gef/updates/releases/
      安装好GEF后,安装AmaterasUML
先到如下地址下载:http://sourceforge.jp/projects/amateras/downloads/56447/AmaterasUML_1.3.4.zip/
解压后把里面的3个jar文件拷贝到eclipse-plugins目录即可,重新启动Eclipse即可。选择 "File"->"New"->"Other",你就可以看见             AmaterasUML的选项了。
      用法:在工程名称右键选择New-Other,弹出新建对话框可以看到AmaterasUML选项,在其中选择Class Diagram,并命名后得到.cld文件,接着我们把工程network包中三个Java文件拖拽到.cld文件视图中,AmaterasUML瞬间帮我们生成了这三个类的关系图。

2.安装和使用ModelSpoon
功能:能将Eclipse中现有的java类生成类图
一:什么是ModelGoon?
它是一个Eclipse插件,用于基于UML图的模型设计,以及逆向工程(即从已有源代码生成类图)。

二:安装

下载地址:http://download.csdn.NET/detail/shizhongwen/7858139

下载ModelGoon-4.4.1-site.zip到电脑,从eclipse中选择help-->install new software.在work with-->Add选择已经下载的ModelGoon-4.4.1-site.zip,一路next完成安装。
三:使用

安装成功后,在eclipse中File-->new-->other-->ModelGoon Diagrams选择Class Diagram,在自己Java工程中创建一个后缀是.mgc的文件,用它来生成类图。用法很简单,直接把Java类拖拽到这个文件视图中,就会自动生成UML类图。

3、想要在Eclipse中自动生成UML图,需要下载eclipse插件:Green UML

官网是:http://green.sourceforge.net/builds.html

1.按照它的提示,打开Eclipse,Help->install New software->将网址上列出的URLhttp://www.cse.buffalo.edu/faculty/alphonce/green 粘贴上->ADD->Next->Next->Finish

2.重启Eclipse

3.新建UML图:File->New->Green UML Class Diagram->输入UML图名->OK->自己所需的类右键->Green UML->Add to last viewed diagram

4、PlantUML —— 应用于 Eclipse 的简单快速的 UML 编辑软件

PlantUML 的安装及配置

PlantUML 支持在多个平台上安装使用,比如 Eclipse,NetBeans,oneline servlet 等,它也支持多种语言的编辑,例如 C/C++,PHP,Java,Html 等。用户可以从 PlantUML 的官方网站上下载所需用的相应的文件。http://plantuml.sourceforge.net/download.html。

下面本文仅以 Eclipse 开发操作平台为例简要地介绍 PlantUML 的安装及配置方法。

  1. 下载更新 PlantUML Eclipse 插件,打开 Eclipse,Help-> Install new software...。

    填入相应的 URL:

    <p><a href="http://basar.idi.ntnu.no/svn/tdt4100/anonymous/trunk/updatesite" rel="nofollow" target="_blank">http://basar.idi.ntnu.no/svn/tdt4100/anonymous/trunk/updatesite/</a></p><p><a href="http://plantuml.sourceforge.net/updatesite" rel="nofollow" target="_blank">http://plantuml.sourceforge.net/updatesite/</a></p><p><a name="t3" target="_blank"></a>图 1. 下载安装 PlantUML 插件</p>
    <img alt="图 1. 下载安装 PlantUML 插件" class="has" src="http://www.2cto.com/uploadfile/Collfiles/20160423/20160423090923947.jpg"></li>
    <li>下载安装成功后,重启 Eclipse。会在 Windows-&gt;Show View-&gt;Other 看到 PlantUML 的图标。
    <p><a name="t4" target="_blank"></a>图 2 . PlantUML 图标成功显示</p>
    <img alt="图 2 . PlantUML 图标成功显示" class="has" src="http://www.2cto.com/uploadfile/Collfiles/20160423/20160423090923948.jpg"><p>用户也可以下载相应的<a href="http://sourceforge.net/projects/plantuml/files/plantuml.jar/download" rel="nofollow" target="_blank">plantuml.jar</a>文件,进行手动安装。</p>
    </li>
    

回页首

PlantUML 的使用实例

用户可以根据不同的需要,利用 PlantUML 可以生成不同的视图。操作非常简单方便。

图 3. PlantUML 操作界面

下面本文将用实际的语法实例对应用 PlantUML 生成的各种视图进行说明介绍。

时序图

时序图亦称为序列图或循序图,是一种 UML 行为图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。它可以表示用例的行为顺序,当执行一个用例行为时,时序图中的每条消息对应了一个类操作或状态机中引起转换的触发事件。

语法实例:

?

1

        <p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p></td><td><p><code>@startuml</code></p><p><code>title Sequence Diagram Example</code></p><p><code>actor Tester1 #red</code></p><p><code>actor Tester2 #Yellow</code></p><p><code>Tester1 -&gt; Tester2: 发送请求</code></p><p><code>Tester2 --&gt; Tester1: 回复请求</code></p><p><code>@enduml</code></p></td></tr></tbody></table></div><p><a name="t8" target="_blank"></a>图 4. 时序图视图</p>

用例图

用例图 - 由主角、用例以及它们之间的关系构成的图。

语法实例:

?

1

        <p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p><p>9</p><p>10</p><p>11</p><p>12</p><p>13</p><p>14</p></td><td><p><code>@startuml</code></p><p><code>: 管理员 : as Admin &lt;&lt; 管理员 &gt;&gt;</code></p><p><code>( 应用程序 ) as (Use)</code></p><p><code>Tester1 -&gt; ( 开始 )</code></p><p><code>Tester2 --&gt; (Use)</code></p><p><code>Admin ---&gt; (Use)</code></p><p><code>note right of Admin : 管理员身份</code></p><p><code>note left of (Use)</code></p><p><code>&nbsp;</code><code>实现 Notes Domino 的功能</code></p><p><code>end note</code></p><p><code>note&nbsp;</code><code>"测试人员进行测试工作"</code>&nbsp;<code>as user</code></p><p><code>( 开始 ) .. user</code></p><p><code>user .. (Use)</code></p><p><code>@enduml</code></p></td></tr></tbody></table></div><p><a name="t10" target="_blank"></a>图 5. 用例图视图</p>

类图

类图 - 显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。

语法实例:

?

1

        <p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p><p>9</p><p>10</p><p>11</p><p>12</p><p>13</p><p>14</p><p>15</p><p>16</p></td><td><p><code>@startuml</code></p><p><code>skinparam classAttributeIconSize&nbsp;</code><code>12</code></p><p><code>class</code>&nbsp;<code>Test &lt;&lt; 主函数 &gt;&gt; {</code></p><p><code>-Function1</code></p><p><code>+Function2</code></p><p><code>#Function3</code></p><p><code>~Function4</code></p><p><code>~method1()</code></p><p><code>+method2()</code></p><p><code>#method3()</code></p><p><code>~method4()</code></p><p><code>}</code></p><p><code>Test &lt;|-- Test2</code></p><p><code>Test1 o-- Test2</code></p><p><code>Test *-- Test3: 调用</code></p><p><code>@enduml</code></p></td></tr></tbody></table></div><p><a name="t12" target="_blank"></a>图 6. 类图视图</p>

活动图

活动图 - 阐明了业务用例实现的工作流程。业务用例工作流程说明了业务为向所服务的业务主角提供其所需的价值而必须完成的工作。业务用例由一系列活动组成,它们共同为业务主角生成某些工件。工作流程通常包括一个基本工作流程和一个或多个备选工作流程。

语法实例:

?

1

        <p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p><p>9</p><p>10</p><p>11</p><p>12</p></td><td><p><code>@startuml</code></p><p><code>(*) --&gt;&nbsp;</code><code>"Start"</code></p><p><code>note right: Start Testing</code></p><p><code>if</code>&nbsp;<code>"result"</code>&nbsp;<code>then</code></p><p><code>&nbsp;</code><code>--&gt;[</code><code>true</code><code>]&nbsp;</code><code>"Next Testing"</code></p><p><code>&nbsp;</code><code>--&gt;&nbsp;</code><code>"End"</code></p><p><code>&nbsp;</code><code>-right-&gt; (*)</code></p><p><code>else</code></p><p><code>&nbsp;</code><code>-&gt;[</code><code>false</code><code>]&nbsp;</code><code>"Change Testing"</code></p><p><code>&nbsp;</code><code>--&gt;[Ending process] (*)</code></p><p><code>endif</code></p><p><code>@enduml</code></p></td></tr></tbody></table></div><p><a name="t14" target="_blank"></a>图 7. 活动图视图</p>

组件图

组件图 - 用来反映代码的物理结构。从组件图中,您可以了解各软件组件(如源代码文件或动态链接库)之间的编译器和运行时依赖关系。使用组件图可以将系统划分为内聚组件并显示代码自身的结构。

语法实例:

1

        <p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p><p>9</p><p>10</p><p>11</p><p>12</p><p>13</p><p>14</p></td><td><p><code>@startuml</code></p><p><code>title Lotus</code></p><p><code>interface</code>&nbsp;<code>"IBMDocs"</code>&nbsp;<code>as SC</code></p><p><code>package</code>&nbsp;<code>"Test1"</code>&nbsp;<code>{</code></p><p><code>SC - [ 第一个组件 ]</code></p><p><code>Notes - [ 第一个组件 ]: use</code></p><p><code>Symphony - [ 第二个组件 ]</code></p><p><code>[ 其他组件 ]</code></p><p><code>}</code></p><p><code>package</code>&nbsp;<code>"Test2"</code>&nbsp;<code>{</code></p><p><code>Connections - [ 第三个组件 ]</code></p><p><code>[ 第一个组件 ] --&gt; iNotes</code></p><p><code>}</code></p><p><code>@enduml</code></p></td></tr></tbody></table></div><p><a name="t16" target="_blank"></a>图 8. 组件图视图</p>

状态图

状态图 - 描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态

对不同的事件做出反应的。

语法实例:

?

1

        <p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p><p>9</p><p>10</p><p>11</p></td><td><p><code>@startuml</code></p><p><code>[*] --&gt; Test</code></p><p><code>state&nbsp;</code><code>"Test"</code>&nbsp;<code>as Test {</code></p><p><code>&nbsp;</code><code>state&nbsp;</code><code>"Testing Module"</code>&nbsp;<code>as TM</code></p><p><code>&nbsp;</code><code>state&nbsp;</code><code>"Configuring Module"</code>&nbsp;<code>as CM</code></p><p><code>&nbsp;</code><code>[*] --&gt; CM</code></p><p><code>&nbsp;</code><code>TM --&gt; CM : Testing1</code></p><p><code>&nbsp;</code><code>CM --&gt; TM : Testing2</code></p><p><code>}</code></p><p><code>note right of Test : 状态图实例</code></p><p><code>@enduml</code></p></td></tr></tbody></table></div><p><a name="t18" target="_blank"></a>图 9. 状态图视图</p>

对象图

对象图 - 显示了一组对象和他们之间的关系。使用对象图来说明数据结构,类图中的类或组件等的实例的静态快照。对象图和类图一样反映系统的静态过程,但它是从实际的或原型化的情景来表达的。对象图显示某时刻对象和对象之间的关系。一个对象图可看成一个类图的特殊用例,实例和类可在其中显示。对象也和合作图相联系,合作图显示处于语境中的对象原型(类元角色)。

语法实例:

?

1

        <p>2</p><p>3</p><p>4</p></td><td><p><code>@startuml</code></p><p><code>object Test1</code></p><p><code>object Test2</code></p><p><code>@enduml</code></p></td></tr></tbody></table></div><p><a name="t20" target="_blank"></a>图 10. 对象图实例</p>

下面本文将简要地介绍一个具体实例的应用。

这个实例是由其官方网站提供:

http://plantuml.sourceforge.net/unicode.html

图 11 是由 PlantUML 的方法生成的实例图。

图 11. 具体实例图

在 PlantUML 的官方主页中,有对各种方法更为详尽的描述及说明。文本仅仅列举了一些简单的语法规则,利用 PlantUML 做出的各种视图。可以看到 PlantUML 提供了非常简单的语法规则,为用户进行编辑提供了较为便捷的方法。

PlantUML 提供了多种语言的编辑方式,如 TXT 文本,HTML,Java,C/C++,LaTex,APT,Word 及 URL 等多种方式,满足不同的用户需求。

eclipse画UML图相关推荐

  1. Visio画UML图基本操作及技巧解析

    Visio如何添加枚举类型 1.  新建DataType 2. 选择DataType -> Property -> Stereotype -> enumeration 3. 添加其他 ...

  2. 使用Visio画UML图(Java)

    2019独角兽企业重金招聘Python工程师标准>>> 1.全面认识UML类图元素:http://cqujsjcyj.iteye.com/blog/387546 2.类UML2:ht ...

  3. 安利一个在线画UML图的网址

    安利一个在线画UML图的网址 https://www.draw.io/

  4. python解析visio_Visio画UML图基本操作及技巧解析

    本文和大家重点讨论一下用Visio画UML图基本操作,画UML图有好多种工具,VISIO只是其中一种,VISIO的动作非常轻快.很多人都在用.下面就让我们一起来看一下具体介绍吧. 用Visio画UML ...

  5. vscode画UML图

    目录 准备环境 流程图demo 关系图demo 画UML图是基于markdown实现的. 准备环境 首先要[全局]安装npm和cnpm. 由于我在安装vue的时候已经安装好了.此处省略 1 通过vsc ...

  6. java测试类要画UML图吗,如何从Java代码生成UML图(尤其是序列图)?

    如何从Java代码生成UML图(尤其是序列图)? 如何从现有Java代码生成UML图(尤其是序列图)? 14个解决方案 249 votes ObjectAid UML Explorer 是我用过的. ...

  7. eclipse生成uml图的插件Green uml的安装和使用

    由于学习java做课程作业需要花类的uml图,上网搜了很多方法.这是安装Green这个插件的方法. 有时候希望把我们写好的类生成一个UML图,是代码看上去更清晰,于是就找了下在eclipse下自动生成 ...

  8. 推荐画UML图以及流程图的在线网站Site

    记得当年学UML课程的时候,当你还在为了安装Rose而发愁的时候,人家都把作业给交了,并且现在大多数UML课程都会让学生使用Rational Rose做画图练习.近来,做毕业设计需要提供各种流程图.U ...

  9. 20201127 使用Markdown 画uml图,Graphviz 安装经历吐血整理

    1 visio code 编辑器,最好有 2 visio code markdownlint插件安装上,这个插件可以比visio code自带的markdown预览展示的更好. 预览相关插件好像是: ...

  10. 如何简单快速画UML图?

    用例图可以通过系统外部用户的角度来描述系统的功能,操作者可以依据用例图来实行各功能的操作.用例图可以通过一个用例来描述一个行为.角色和用例的关系.构成用例图的元素有:角色.用例.包含关系和扩展关系.因 ...

最新文章

  1. protect 继承_C++ protected继承和private继承是不是没用的废物?
  2. 牛客题霸 NC21 链表内指定区间反转
  3. java 精通_你真的精通Java吗?
  4. [css] 鼠标事件css的:hover和js的mouseover有什么区别?
  5. 天弘余额宝发布2018年报:规模1.13万亿 平均每天赚1.39亿元
  6. 都说「跳一跳」是微信抄袭了育碧,万万没想到,他们在一起了!
  7. Cherry,你会喜欢这种手机!
  8. Python编程实践—打印 九九乘法表的几种方法
  9. dwr 例外被抛出且未被接住 engine.js
  10. Ubuntu命令方式安装中文语言包
  11. 2020.09.19【普及组】模拟赛C组总结
  12. html年龄0-120岁正则,正则表达式
  13. MCU芯片设计和软件开发
  14. 工程流体力学笔记暂记42 (收缩喷管中的流动)
  15. Android 知识点——Method put in org.json.JSONObject not mocked
  16. Github / Gitlab Actions 中的 cron 格式 和设置方法
  17. 命令 修复损坏的 Ubuntu 系统 ,不用重装
  18. Week15 作业 A - ZJM 与霍格沃兹 HDU - 1880
  19. RocketMQ延迟消息的代码实战及原理分析
  20. org.hibernate.hql.internal.ast.QuerySyntaxException错误原因

热门文章

  1. 教你快速将多个TXT文档合并成一个
  2. 微信小程序如何实现登陆功能
  3. 迈达斯导出html计算书,动态计算书模块功能-midas Civil 2011
  4. mysql数据库在哪里写语句_MySQL数据库基本操作以及SQL语句
  5. 汇编语言集成开发环境 RadASM 中文版 (修复object file not found报错)
  6. Java, 基础(面试题)总结(分享-交流)
  7. 20考研率辉计算机复试(散列)
  8. AXI总线(top)
  9. WordPress 跨站请求伪造漏洞
  10. 关于编译android程序,期待模拟器,中文路径的问题【转载】