精华内容
下载资源
问答
  • 本节向大家介绍一下UML建模工具Rose与PowerDesigner,两款建模工具的对比,主要包括二者的出身,二者的区别等内容,相信通过本节的介绍你对UML建模工具Rose与PowerDesigner,两款建模工具的特性有清楚的认识。...

    原文:http://developer.51cto.com/art/201006/207888.htm

    作为世界最著名的两大CASE工具,UML建模工具Rose和PowerDesigner的名声可谓如雷贯耳。对此你是否熟悉,请看本文关于这二者的介绍吧。

    本节向大家介绍一下UML建模工具Rose与PowerDesigner,两款建模工具的对比,主要包括二者的出身,二者的区别等内容,相信通过本节的介绍你对UML建模工具Rose与PowerDesigner,两款建模工具的特性有清楚的认识。

    UML建模工具Rose与PowerDesigner:两款建模工具的对比

    一、二者的出身

    作为世界最著名的两大CASE工具,Rational UML建模工具Rose和PowerDesigner的名声可谓如雷贯耳。UML建模工具Rose是当时全球最大的CASE工具提供商Rational的拳头产品,UML建模语言就是由Rational公司的三位巨头Booch、Rumbaugh和Jacobson发明的,后来Rational被IBM收购,所以UML建模工具Rose可谓出身名门,嫁入豪族。而PowerDesigner也有一段好玩的历史,作者王晓昀是一位中国人,在法国SDP软件公司工作时,由于苦觅一个好用的CASE工具未果,干脆自由开搞,整了个AMC Designor出来,居然一炮打响,在法国卖得个“巴黎纸贵”,后来SDP被Powersoft公司收购,同年Sybase这只大黄雀又吃下了Powersoft这只螳螂,所以PowerDesigner也是惊艳出场,星光四射。
    但两者所走的明星路线却很不相同,UML建模工具Rose出道是时,走的是UML面向对象建模,而后再向数据库建模发展,而PowerDesigner则反其道而行之,它先是一个纯粹的数据库建模工具,后来才向面向对象建模,业务逻辑建模及需求分析建模进军,最终变成“演视歌三栖”明星。
    由于第一印象的影响,所以UML建模工具Rose常常给人的印象还是只是面向对象分析设计的工具,而PowerDesigner给人的印象则还停留在数据库建模工具上。其实,现在的UML建模工具UML建模工具Rose和PowerDesigner都即可以进行数据库建模,也可以进行面向对象建模,只是存在支持上的偏重而已。

    二、二者区别概述

    UML建模工具Rose和PowerDesigner虽然在项目分析设计领域已经成为被高度聚光的明星,但是在具体使用哪款工具的问题上,不同的公司,不同的人,出于成本,习惯抑或个人喜好,往往有自己的判断。由于笔者在不同的公司中被分别要求使用UML建模工具Rose或PowerDesigner进行分析设计工作,所以对二者有着较为细致的体验。
    UML建模工具Rose走大而全,一站式的策略,它没有将数据库设计和面向对象设计清晰地分开,仅以不同的目录来区分。而PowerDesigner将两者划分到独立的模型文件中,分别对应不同的设计环境,并通过模型之间的转换工具建立各模型的关联。即使对于数据库设计模型,PowerDesigner也需要你选择一个具体的数据库产品及其版本,以便工作环境对具体数据库敏感。所以UML建模工具Rose显得大而化之,而PowerDesigner则比较精细和一体化。UML建模工具Rose的逆向工程,文档输出,代码生成等输入输出功能上表现得比较生硬单调,PowerDesigner在逆向工程,特别是文档输出和代码生成这些功能上提供了精细的控制,让用户拥有高度的自由度。

    UML建模工具Rose在操作体验上存在很多需要改进的地方,UML建模工具Rose偏向于让用户用鼠标进行操作,对键盘操作支持不好。而PowerDesigner在用户体验上得分很高,大部分操作都可以通过键盘完成,在充分熟悉其快捷键的前提下,PowerDesigner将给设计者一种行云流水的感觉,用户交互上更加人性化。此外,UML建模工具Rose往往占用更多的资源,容易异常退出,PowerDesigner则显得轻便稳定。所以,我个人对两者的体验就是“UML建模工具Rose笨拙,PD利索”。下面将具体列出UML建模工具Rose和PowerDesigner的一系列的区别,相信大家可以借由这些比较而见微知著,窥斑知豹,以资在选择工具时,提供参考。

    三、模型组织和层次结构上的区别

    1、模型组织UML建模工具Rose将数据库模型和对象模型放在一起,在进行数据表模型设计时,没有特性化的东西。而PowerDesigner将两者分开,其模型组织层级关系是:工作空间->模型类型->具体语言/数据库的模型->包->文件夹->Diagram->设计元素。在创建模型文件时,会让你选择模型类型,选择模型类型后,还可以选择模型类型下语言及版本相关的细分类。不同设计模型对应软件工程的不同阶段,如业务模型和需求模型属于项目需求阶段,而对象模型属于概要和详细设计阶段,数据库模型属于详细设计阶段。它们之间虽然有很强的内在联系,但差异性也很明显,硬将两者放到一起,就象把猴子和猩猩关进同一个笼子,为了兼顾和平衡两者之间的考量,其结果是两者都得不到很好的支持。

    PowerDesinger可以通过模型转换工具进行数据库建模和面向对象模型的相互转换。但UML建模工具Rose不能将对象转换为表,也不能将表转换为对象。

    2、工作空间PowerDesigner有工作空间的概念,一个工作空间下可以同时打开多个设计模型文件;而UML建模工具Rose同时仅能打开一个设计文件,如果在设计时,需要参考其他的UML建模工具Rose设计模型,则需要反复关闭现有模型,打开参考模型,显得设计上比较欠考虑。这个问题上两者的差异恰似Eclipse和JBuilder的区别,Eclipse可以同时打开多个工程,而JBuilder只能同时打开一个工程。

    3、设计界面PowerDesigner的设计界面可以左右上下移动,而UML建模工具Rose只能向右,向下移动,此外,PowerDesigner可以将模型元素放大很多倍,而UML建模工具Rose只能放大到正常倍数,不过UML建模工具Rose的Overview工具可以使用户快速定位到设计区中特定的区域,有点类似于游戏界面中常用的小地图,挺不错;而在PowerDesigner中,你可以通过F8快捷键查看Diagram的总览图,不过只得通过放大操作定位到定位区域。

    4、对模型和语言的支持

    对设计模型的支持力度和广度

    PowerDesigner对对象模型和数据库建模两者的支持力度已经大抵相等,此外,还支持概念模型、业务模型、需求模型、XML模型、信息流模型、自由模型的分析设计。不过对后面这几个模型的支持比较初级,而且在实际的应用中,这些模型用得也比较少,PowerDesigner的突出亮点还是在数据库建模和对象模型的设计上。
    对于数据库模型,PowerDesigner支持20余种数据库,对于同一数据库的不同版本还提供单独的支持,以便在设计数据库模型时,提供数据库和版本相关的设计。对于面向对象模型,PowerDesigner支持11种主流语言,为对Java 5.0提供单独的支持。
    UML建模工具Rose基本上可以说是一个对象模型设计工具,对数据库模型的支持相对粗糙,内嵌的只支持Oracle 8数据库,对其他数据库设计的支持需要通过安装插件的方式获得,且对数据库物理存储参数等较细粒度的内容支持得比较粗糙。UML建模工具Rose的对象模型主要支持Java、VC和VB三种语言。

    对Java语言的支持

     UML建模工具Rose对Java语言的支持更好,不但为不同版本的JDK提供了支持(不过UML建模工具Rose 2003还不支持JDK 5.0),还为Java具体产品及设计模式(如EJB、Corba、Servlet,GOF设计模式等)提供了内嵌性的支持,这些支持直接反应在UML建模工具Rose的主菜单上。正因为如此,使UML建模工具Rose背上的沉重的历史负担,如EJB和Corba这种语言级的东西是易变且不断更新的,如何在这些具体产品的地位和影响已经降低时,对其作出割舍而又保证版本的兼容性,是摆在设计者面前的难题。
    PowerDesigner仅提供语言级对象设计的支持,不涉及语言内部的具体产品。其次因为它的设计工作区是和具体的模型类型及语言细分类相关的,而非在主菜单中直接提供支持,所以PowerDesigner在升级时显得更加从容一些。
    这也是为什么PowerDesigner能以每年一个版本的速度升级,而UML建模工具Rose在2003版本后,新版本还迟迟投入市场的内在原因,否则以IBM的财力,研发能力不至于对市场反应如果缓慢。

    5、输入和输出功能的比较

    反向工程
    从将程序代码转换为设计模型的逆向工程功能上看,UML建模工具Rose更象一个IDE,它会对需要逆向工程操作的程序代码进行深度语义检查,如果存在诸如程序代码引用了类库之外的类,反向工程将失败,而且在报告失败之前,窗口会陷入长时间无响应状态。
    PowerDesigner仅对需逆向工程的程序代码进行浅度语法检查,这种浅度语法检查不涉及包,类之间的关联,仅对诸如类名是否和类文件名匹配,是否少了“}” 等语法性的内容进行检查。即便存在错误,PowerDesigner也允许你忽略错误,继续进行逆向工程操作,这种宽松的限制带来了很大的便利。

    忽略错误后,PowerDesigner会尽量修补错误,例如代码中少了对应的“}”,它将会补上,类名和文件名不一致,将忽略类文件名保持类名不变。
    UML建模工具Rose一直宣扬的理念是IDE和设计工程进行双向互通:在UML建模工具Rose中完成模型设计后导出为IDE所用的代码,IDE编码调整后又逆向工程到UML建模工具Rose。理念很美,深具吸引力,但是在实现中,往往很少有开发团队会这样做。一般CASE工具只是在分析设计阶段使用,甚至很大比例的设计师仅把它当成画图的工具。
    真正进入编码开发阶段后,将加入大量设计时不涉及的类和方法,如果将这些非骨架性的东西Reverse到CASE工具中,反而会使原来清晰的设计变得雾里花,水中月。所以即使编码时,需要对原分析模型进行调整,一般也是手工去调整设计模型,而不是通过逆向工程去同步,毕竟分析设计是骨架性的,而编码是血肉性的,两者有属性上的区别。如果真的需要频繁进行的代码和UML转换,最好使用类似于Together一样的工具,它嵌入到IDE中,使代码和模型转换方便快捷。

    文档导出功能

    PowerDesigner对文档导出提供了精细的控制,你不但可以对文档所包含的内容项进行设置,还可以对内容项的格式进行设置。如导出的表结构是否包括名称、数据类型、备注等项目,这些项目在表栏中的宽度占比,颜色,字号等等,不一而足。
    PowerDesinger 12.0 还新增了一个多模型文档整合导出的Milti-Model Report模型,允许你以多个模型作为输入生成为统一文档,实现模型设计按阶段分开,文档又统一整合的目的。
    由于PowerDesigner文档导出的设置非常精细,所以要设置好一个文档导出模式实非不易。有鉴于此,PowerDesinger提供了三种常用的导出模板,用户也可以自己定义模板。通过模板可以迅速完成设计模型文档的导出工作。
    而UML建模工具Rose没有导出模板的概念,更不能对导出项和格式进行设置,你只能按UML建模工具Rose的系统内置的方式进行模型文档的发布。

    代码导出

    在导出设计模型的代码时,PowerDesigner提供了精细的控制,不但可以进行对象级别,还可以进行代码级别的控制(如是否要生成字段备注的代码,外键代码在表体代码内声明还是在表体外部声明等),而UML建模工具Rose没有提供代码导出的控制,也只能按其系统内部设置的方式导出代码。
     
    生成测试数据

    PowerDesigner可为数据表生成批量的测试数据,而且你还可以制定测试数据的生成规则。这个功能给初期项目的开发测试带来很大的便利。UML建模工具Rose中没有提供类似的功能。

    展开全文
  • UML For Mac 建模工具汇总

    千次阅读 2015-12-02 21:01:03
    在苹果的平台下开发软件有哪些UML建模工具可用呢?虽然不如Windows平台下那么多的工具可以选择,还是可以列出一些的。 Mac平台下原生的UML建模工具,功能最强的就是Excel Software出品的MacA&D。MacA&...

    UML for mac

    在苹果的平台下开发软件有哪些UML建模工具可用呢?虽然不如Windows平台下那么多的工具可以选择,还是可以列出一些的。

    Mac平台下原生的UML建模工具,功能最强的就是Excel Software出品的MacA&D。MacA&D支持绝大多数UML2.2图形,支持C++、Objective-C、SQL、Java、PHP和REALbasic的代码生成,还支持结构化分析设计里的数据流图。可惜MacA&D是收费的,即使是学生版,也要49美元。如果想用免费的,CanvasUML就是一个免费的、基于Cocoa的UML工具,不过它只能画类图。

    MagicDraw和Visual Paradigm也声称有for Mac的版本,但看看界面截图,再仔细研究产品页面上的系统安装要求:JRE 1.4.2 or later,其实还是Java编写的“跨平台”产品。

    The Omni Group出品的OmniGraffle是Mac OS X平台下相当受欢迎的绘图工具,相当于Windows下面的Visio,可以导入和导出Visio的文件。和Visio一样,OmniGraffle可以通过UML的stencil,画出非常好看的UML图。这个商业工具要比MacA&D更贵,不同版本的价格在99-299美元之间。随着iPad风行,OmniGraffle也与时俱进,提供了for iPad的版本,充分利用平板电脑的优势来绘图。如果只是为了画“UML形状”的图,并不需要建模工具的正向逆向工程、验证、管理等功能,选用OmniGraffle再合适不过了。

    如果不追求原生的苹果味道,Java开发的一些UML建模工具都可以尝试。开源或免费的工具有ArgoUML、BOUML、NetBeans IDE、TopCoder UML Tool等,特别是BOUML,版本更新非常积极。商业工具有Astah、MagicDraw和Visual Paradigm等,还可以选择在线的UML工具,如easyumleditor.com 、creately.com 、gliffy.com、yuml.me、lucidchart.com 、diagrammr.com等。

    遗憾的是,Windows下面几个典型的工具都不能直接在Mac下使用,包括贵且强大的Rational序列(包括RSM、RSA和Rhapsody)、性价比高的Enterprise Architect和开源的StarUML。而且,绝大多数的UML工具一开始就是为Windows平台编写的,即使后来成功移植(包括Java的“跨平台”)到Mac下,依然摆脱不了原来Windows界面风格的痕迹。

     

    UML相关工具介绍

    根据UML 相关工具介绍, 统计了 厂商/费用/代码工程/使用平台等等, 并会及时更新的. 了解详细内容请查看此链接 UML相关工具一览(截止2016年1月)

    以下为网址中的前几个工具的介绍: 
    这里写图片描述

     

     

    展开全文
  • PDMan国产建模工具

    2020-04-12 22:24:21
    软件开发中,数据建模是必不可少的,说到数据库建模工具,很多人想到的第一个工具就是powerdesigner,但是单数据库建模这块来说,给人的感觉还是太重了,并且不支持多种客户端,像我现在用Mac...

    目录

    官方地址

    主要支持的功能如下:

    demo示例

    关系图查看

    属性查看和修改

    支持多个数据库

    连接数据库,直接执行DDL语句

    从数据库进行逆向解析

    导出文档,pdf

    支持多种客户端


    软件开发中,数据建模是必不可少的,说到数据库建模工具,很多人想到的第一个工具就是powerdesigner,但是单数据库建模这块来说,给人的感觉还是太重了,并且不支持多种客户端,像我现在用Mac只能望洋生叹了。

    今天无意中看到一款国产建模工具PDMan,看到简介和界面,就让我精神一震,决定来尝尝鲜!

    官方地址

    http://www.pdman.cn/#/

    主要支持的功能如下:

    • demo示例
    • 支持多个系统客户端(linux,mac,windows)
    • 数据库建模
    • 生成DDL脚本并执行
    • 支持目前主流数据库
    • 数据库逆向解析
    • 导出WORD,PDF,HTML
    • MarkDown四种格式的文档
    • 自定义模板生成程序代码

    demo示例

    软件下载下来就自带两个项目案例,通过案例来模板是最好入门的,发现都是一系列的傻瓜式操作,贼方便。

    关系图查看

    点击项目上的关系图即可一览全局,说实话,界面真的挺好看的。

    属性查看和修改

    别说,说就让你看图,都是中文,建模的时候可以关闭那些英文翻译软件了。

    支持多个数据库

    不多说,一个动态图就看懂

    连接数据库,直接执行DDL语句

    从数据库进行逆向解析

    导出文档,pdf

    交接的时候最麻烦的就是有的还要你讲解和交接表结构,好了,这下简单了!

    支持多种客户端

    像小编经常在mac和windows环境下切换开发的,相当实用了,因为我在也不用为mac端再找一款建模软件了,一份文件,多端都可以使用。

    当前支持的客户端有:

    • Windows32
    • Windows64
    • Mac
    • Linux通用
    • Linux-DEB(Debian系列如:Unbuntu,LinuxMint)
    展开全文
  • UML建模工具Enterprise Architect(EA) -- 安装及简单使用

    万次阅读 多人点赞 2019-04-03 14:47:18
    -- -- 摘自百度百科 比Rose还要强大的UML建模工具,安装后,整体UI风格如下: 二、安装EA 百度网盘链接:https://pan.baidu.com/s/1XrVpqaArVk9FK7hV4Nu-1A 提取码:umvh 本篇用到的test.eapx和mybatis.eapx工程...

    目录

    一、什么是EA?

    二、安装EA

    三、为什么要学会用EA?

    四、创建EA工程

    五、创建类视图,构建类和接口

    六、选中模型目录,自动检出Java代码

    七、构建内部类

    八、趁热打铁,构建数据表视图并检出SQL脚本

    九、导入源码目录,逆向生成EA类视图

    十、其他UML建模视图不再陈述


    一、什么是EA?

    Enterprise Architect 是Sparx Systems 公司的旗舰产品。它覆盖了系统开发的整个周期,除了开发类模型之外,还包括事务进程分析,使用案例需求,动态模型,组件和布局,系统管理,非功能需求,用户界面设计,测试和维护等。

                                                                                                                                --  -- 摘自百度百科

    比Rose还要强大的UML建模工具,安装后,整体UI风格如下:


    二、安装EA

    百度网盘链接:https://pan.baidu.com/s/1XrVpqaArVk9FK7hV4Nu-1A

    提取码:umvh 


    本篇用到的test.eapx和mybatis.eapx工程下载地址:

     


    test.eapx工程下载地址:

    链接:https://pan.baidu.com/s/1dMJ18lAwjMAHTjMBZI3DTQ
    提取码:kvxy 


    mybaits.eapx工程下载地址:

    链接:https://pan.baidu.com/s/1_vd7WDXaVxW-M3TuOM885A 
    提取码:ef77


    三、为什么要学会用EA?

    我直接用三个反问句吧,直接明了:

    1、你还在没经过设计就直接敲代码吗? 设计先行的理念哪去了?

    2、你难道不想要有一种工具,可以把你设计的东西直接转换成代码或者sql语句,以减轻你的工作量吗?

    3、你难道不想要有一种工具可以直接将第三方开源框架的源码逆向生成类视图便于查看和存档吗?比如Spring、SpringBoot、Mybatis、Dubbo、Netty等框架的源码包。

    4、你想一直都敲代码吗?程序员可不是吃青春饭的,时间久了,就该要好好考虑转变开发角色的事情了。

    5、其他...... .......


    四、创建EA工程

    (1)新建工程,命名为test(.eapx)

    (2)创建视图

    举个例子:

    右键选择添加:

    案列效果:

    从左至右,依次是:工程的目录结构,主视图窗口,属性面板(设置对象的属性值)


    五、创建类视图,构建类和接口

    我们不使用案列带的Diagrams例子,直接新建一个package,在package下添加我们需要的类

    (1)创建一个包,命名为类视图

    (2)在构建的包(目录)下面添加一个视图

    (3)选择Class(类)

    (4)瞅准工具箱(Toolbox,往视图面板上拖类和接口组件)

    工具箱的位置:Design-->Toolbox

    (5)拖入两个类和一个接口(一个子类,一个抽象超类,一个接口)

    (6)给类或接口添加说明(标注)

    (7)改变字体大小

    (8)废话不多说,直接构建关系,看效果

    (9)给QQPlayer类添加属性字段

    添加一个name字段:


    添加方法playMovies():


    调整变量或方法的“出场”顺序:

    (10)标识类为抽象类

    抽象类的字体是倾斜的,如下:

    (11)至此,类和接口的简单使用结束

       难点在于:关系的认知,比如哪根线表示继承,哪根线又表示实现等;如何给类添加字段和方法;如何标识类为抽象类;


    六、选中模型目录,自动检出Java代码

    (1)改变类视图的目录(包)结构如下(第五步的结果一定要记得保存!!!)

    (2)见证奇迹,检出代码

    勾选选项(配置一下)如下:

    勾选 Include all Child Packages

    点击Generate按钮,成功了即可看到如下:

    (3)回到桌面,检查上一步自动生成的代码是否OK

    目录结构很package,很ok,就是不知道代码是否也ok呢?

    (4)检查下代码,看一下QQPlayer类是否继承和实现都体现在代码里了

    就连抽象类Mp3也是很ok的


    七、构建内部类

    7.1 首先定义三个类


    7.2 然后补全成员变量,比如属性字段、方法等


    7.3 接下来,先随便从工具箱选根线(因为工具箱没有放Nesting·嵌套的线)分别对Builder和ResultCode进行连线如下


    7.4 然后,选中其中一根线,右键:Advanced->change Type....


    7.5 在连接类型下拉框中选择:Nesting


    7.6 两边都修改后,效果如下


    7.7 生成代码,看下效果

    package 类视图.com.appleyk.model;
    
    
    /**
     * 请求响应结果封装
     * @author appelyk
     * @version 1.0
     * @created 24-十二月-2020 14:08:25
     */
    public class TResult {
    
    	/**
    	 * 请求响应结果构建器
    	 * @author appleyk
    	 * @version 0.1.1
    	 * @created 24-十二月-2020 14:08:25
    	 */
    	public class Builder {
    
    		private int status;
    		private String message;
    		private Object data;
    
    		public Builder(){
    
    		}
    
    		public void finalize() throws Throwable {
    
    		}
    		/**
    		 * 
    		 * @param status
    		 */
    		private GxResult.Builder status(int status){
    			return null;
    		}
    
    		/**
    		 * 
    		 * @param message
    		 */
    		private GxResult.Builder message(String message){
    			return null;
    		}
    
    		/**
    		 * 
    		 * @param data
    		 */
    		private GxResult.Builder data(Object data){
    			return null;
    		}
    	}//end Builder
    
    	/**
    	 * 请求响应结果状态码
    	 * @author appleyk
    	 * @version 0.1.1
    	 * @created 24-十二月-2020 14:08:25
    	 */
    	public enum ResultCode {
    		SUCCESS,
    		FAIL;
    
    		/**
    		 * 结果状态码
    		 */
    		private final int code;
    		/**
    		 * 结果状态码描述
    		 */
    		private final String description;
    	}
    
    	/**
    	 * 响应状态
    	 */
    	private int status;
    	/**
    	 * 响应消息
    	 */
    	private String message;
    	/**
    	 * 响应结果
    	 */
    	private Object data;
    	/**
    	 * 响应时间
    	 */
    	private Date timestamp;
    
    	public TResult(){
    
    	}
    
    	public void finalize() throws Throwable {
    
    	}
    	public static TResult ok(){
    		return null;
    	}
    
    	/**
    	 * 
    	 * @param status
    	 * @param message
    	 * @param data
    	 */
    	public static TResult ok(int status, String message, Object data){
    		return null;
    	}
    }//end TResult

    7.8 去掉生成代码中的

    public void finalize() throws Throwable {
    
    }

    (1) Code->Options->Edit Code  Templates


    (2)锁定到Class Body模板中的第22到25行,将其清除掉,并保存


    (3)保存后再次生成code,就ok了

    package 类视图.com.appleyk.model;
    
    
    /**
     * 请求响应结果封装
     * @author appelyk
     * @version 1.0
     * @created 24-十二月-2020 14:20:27
     */
    public class TResult {
    
    	/**
    	 * 请求响应结果构建器
    	 * @author appleyk
    	 * @version 0.1.1
    	 * @created 24-十二月-2020 14:20:27
    	 */
    	public class Builder {
    
    		private int status;
    		private String message;
    		private Object data;
    
    		public Builder(){
    
    		}
    		/**
    		 * 
    		 * @param status
    		 */
    		private GxResult.Builder status(int status){
    			return null;
    		}
    
    		/**
    		 * 
    		 * @param message
    		 */
    		private GxResult.Builder message(String message){
    			return null;
    		}
    
    		/**
    		 * 
    		 * @param data
    		 */
    		private GxResult.Builder data(Object data){
    			return null;
    		}
    	}//end Builder
    
    	/**
    	 * 请求响应结果状态码
    	 * @author appleyk
    	 * @version 0.1.1
    	 * @created 24-十二月-2020 14:20:27
    	 */
    	public enum ResultCode {
    		SUCCESS,
    		FAIL;
    
    		/**
    		 * 结果状态码
    		 */
    		private final int code;
    		/**
    		 * 结果状态码描述
    		 */
    		private final String description;
    	}
    
    	/**
    	 * 响应状态
    	 */
    	private int status;
    	/**
    	 * 响应消息
    	 */
    	private String message;
    	/**
    	 * 响应结果
    	 */
    	private Object data;
    	/**
    	 * 响应时间
    	 */
    	private Date timestamp;
    
    	public TResult(){
    
    	}
    	public static TResult ok(){
    		return null;
    	}
    
    	/**
    	 * 
    	 * @param status
    	 * @param message
    	 * @param data
    	 */
    	public static TResult ok(int status, String message, Object data){
    		return null;
    	}
    }//end TResult


    八、趁热打铁,构建数据表视图并检出SQL脚本

    (1)创建Data Modeling

    点击ok完成后,效果如下:

    (2)基于PostGreSql,构建一张表和一个ID自增序列

    (3)给User表添加列

    添加id、name、age、sex等(简单意思下就行):

    (4)最终视图效果如下

    (5)自动检出sql脚本(操作和生成代码有点区别)

    选中所有元素(对象):

    选中后效果如下:

    (6)Generate后,桌面验证SQL脚本

    查看内容:

    (7)PostGreSql数据库验证一下,SQL脚本是否可用

    刷新一下,查看构建的user表:

    使用下刚才创建的user_id序列:


    九、导入源码目录,逆向生成EA类视图

    拿mybatis-3源码来说,如下:


    如果你觉得在IDEA或Eclipse中编译源码太耗时,且太依赖于IDE工具,可以试着用EA逆向导入源码包自动生成所有的包和类视图即可,操作如下:

    8.1 创建一个mybaits的工程


    8.2 在工程下面创建一个名称为mybatis-3的根包


    8.3 设置项目的源码类型及编码


    8.4 选择要导入的myabtis(关键的)源码包





    耐心等待一会就行了,顺便再提一句,整个mybaits的源码有效代码行总过5.6w多行,还是不少的 


     8.5 查看SqlSessionFactory类的注释


    十、其他UML建模视图不再陈述


    test.eapx工程下载地址:

    链接:https://pan.baidu.com/s/1dMJ18lAwjMAHTjMBZI3DTQ
    提取码:kvxy 


    mybaits.eapx工程下载地址:

    链接:https://pan.baidu.com/s/1_vd7WDXaVxW-M3TuOM885A 
    提取码:ef77

    展开全文
  • 数据库建模工具UML

    千次阅读 2018-11-18 09:48:19
     Sybase PowerDesigner - 一个高端数据建模工具。你可以下载一个45天试用版。ERWin - 一个高端数据建模工具。可下载试用版。Rational Rose Enterprise - 一个高端UML工具,恰如其分的数据库建模支持。可下载试用...
  • 8 款免费的 MySQL 数据库建模工具

    千次阅读 多人点赞 2020-09-09 22:14:25
    数据库建模和设计是软件开发过程中必不可少的步骤,一个良好的建模工具可以帮助我们简单快速地完成数据库设计,提高工作的效率。因此,今天给大家推荐几款免费的 MySQL 数据库建模工具,包括 MySQL Workbench、SQL ...
  • mysql 数据库建模工具 mysqlworkbench

    万次阅读 2016-05-11 21:29:37
    mysql 数据库建模工具
  • ER数据建模工具

    千次阅读 2018-11-22 18:18:55
    目录 PowerDesigner ER/Studio MySQL Workbench ...这个过程叫做数据建模。为了避免认为错误并且加快进度,我们需要使用专业的软件来帮助我们建立数据逻辑模型和物理模型、生成DDL,并且能够生...
  • 数据库建模工具一缆

    万次阅读 2008-05-25 22:07:00
    转自:... ERWin - 一个高端数据建模工具。可下载试用版。Rational Rose Enterprise - 一个高端UML工具,恰如其分的数据库建模支持。可下载
  • 常用建模工具

    千次阅读 2018-05-20 13:49:34
    UML简介Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析...
  • 而真正使用数据库建模工具进行数据库设计的就很少了;如果你讯问那些不愿意使用数据库建模工具的人为什么的话,我想他们一般会给你下面几个答案: 1.数据库结构不复杂,没必要使用建模工具。 2.建模工具使用起来比较...
  • 推荐一款最近发现非常实用的数据库建模工具PDMan--国产免费通用数据库建模工具(极简,漂亮) ...一直想找一款支持中文编辑,又能向很好向同事直观展示数据库各关系的建模工具,意外发现了这款神器. ...
  • PowerDesigner建模工具介绍与使用教程

    千次阅读 2017-06-07 11:14:34
    PowerDesigner建模工具介绍与使用说明,帮助读者快速使用powerDesign建模工具,同时也介绍了一些高级技巧
  • 建模工具StarLogo 简介

    千次阅读 2011-09-16 16:58:34
    建模工具StarLogo 简介 [ 作者:宗骁 转贴自:人大经济实验室 ] 工具下载网址:http://education.mit.edu/starlogo/ StarLogo是由麻省理工大学多媒体实验室开发的一个可编程的建模环境,用于研究分散系统...
  • 而真正使用数据库建模工具进行数据库设计的就很少了;如果你讯问那些不愿意使用数据库建模工具的人为什么的话,我想他们一般会给你下面几个答案: 1.数据库结构不复杂,没必要使用建模工具。 2.建模工具使用起来比较...
  • 常用数据库建模工具

    万次阅读 多人点赞 2018-03-14 15:03:10
    SQL Power Architect 是一个Java开发的数据库建模工具,特别适合做数据仓库和数据集市的应用建模,它允许设计人员同时打开多个数据源连接,并直接从数据库中获取模型定义,可进行不同... 上次更新: 2010年08月18日 ...
  • UML建模工具比较

    2013-08-23 13:56:12
    这样为我们提供了许多的选择,同时也要求我们在选择正确的UML建模工具以更好地适应我们业务和软件应用程序开发需求,达到最好的投资回报率(ROI)方面做大量的调查。在这篇文章中,我们将比较两款CASE工具的UML建模...
  • Datablau Data Modeler 新一代数据库建模工具

    千次阅读 热门讨论 2019-08-09 12:59:57
    好用的专业建模工具 Datablau DDM是新一代数据模型管理工具,由ERwin数据建模研发骨干开发团队荣誉出品。传统建模工具主要面向设计,而DDM创新的融合了数据治理理念,把数据治理推进到开发流程中,进行开发态的源头...
  • UML建模工具比较

    千次阅读 2008-04-13 16:17:00
    这样为我们提供了许多的选择,同时也要求我们在选择正确的UML建模工具以更好地适应我们业务和软件应用程序开发需求,达到最好的投资回报率(ROI)方面做大量的调查。在这篇文章中,我们将比较两款CASE工具的UML建模...
  • 可视化建模工具Rational Rose

    千次阅读 2012-04-02 10:08:39
    Rational Rose是Rational公司出品的一种面向对象的统一建模语言的可视化建模工具。用于可视化建模和公司级水平软件应用的组件构造。 简介  就像一个戏剧导演设计一个剧本一样,一个软件设计师使用...
  • UML建模工具 astah

    千次阅读 2012-12-18 17:21:05
    随着UML的扩大,UML建模工具也越来越庞大。不过,许多功能并不是用户所寻求的。因此,Astah Professional(原名JUDE)听取用户心声,根据用户需要打造,按照使用习惯设计,轻便简单,友好易用,用户可以轻松使用它来...
  • 软件建模工具Enterprise Architect

    千次阅读 2008-10-07 09:56:00
    关键字: uml 软件工程 建模 工具 enterprise architect 简介Enterprise Architect和Rational Rose,Borland Together类似,是软件建模工具。Enterprise Architect简称EA,网址:www.sparxsystems.com.au/是一家...
  • 几种数据库建模工具推荐(包含开源版)使用PowerDesigner进行数据库建模入门
  • 威胁建模工具是 Microsoft 安全开发生命周期 (SDL) 的核心要素。潜在安全问题处于无需花费过多成本即可相对容易解决的阶段,软件架构师可以使用威胁建模工具提前识别这些问题。因此,它能大幅减少开发总成本。此外,...
  • 一种建模工具很好用

    千次阅读 2012-08-04 13:59:31
    Rational Rose是Rational公司出品的一种面向对象的统一建模语言的可视化建模工具。用于可视化建模和公司级水平软件应用的组件构造。 简介  就像一个戏剧导演设计一个剧本一样,一个软件设计师使用Rational ...
  • IDEF1X建模工具

    千次阅读 2019-06-27 10:59:37
    IDEF系列方法是由美国空军的ICAM(Integrated Computer Aided Manufacturing)计划中首次提出一种复杂系统分析与设计方法,它包括了功能建模(IDEF0)、信息建模(IDEF1)、动态建模(IDEF2)、数据建模(IDEF1x)、过程描述...
  • 是一个数据库建模工具 是Sybase的企业建模和设计解决方案 , 采用模型驱动方法 , 将业务与IT结合起来 , 可帮助部署有效的企业体系架构 , 并为研发生命周期管理提供强大的分析与设计技术 二 信息概述 使用它可以...
  • 分享一款开源数据库建模工具–PDMan(可代替powerdesigner)。 概述 今天主要分享一款数据库建模工具–PDMan,这是一款开源免费的数据库模型建模工具,支持Windows,Mac,Linux等操作系统,是PowerDesigner之外,更好...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 85,955
精华内容 34,382
关键字:

表建模工具