PowerDesigner使用教程

PowerDesigner是一款功能非常强大的建模工具软件,足以与Rose比肩,同样是当今最著名的建模软件之一。Rose是专攻UML对象模型的建模工具,之后才向数据库建模发展,而PowerDesigner则与其正好相反,它是以数据库建模起家,后来才发展为一款综合全面的Case工具。 PowerDesigner主要分为7种建模文件: 1.  概念数据模型 (CDM) 对数据和信息进行建模,利用实体-关系图(E-R图)的形式组织数据,检验数据设计的有效性和合理性。 2.  逻辑数据模型 (LDM) PowerDesigner 15 新增的模型。逻辑模型是概念模型的延伸,表示概念之间的逻辑次序,是一个属于方法层次的模型。具体来说,逻辑模型中一方面显示了实体、实体的属性和实体之间的关系,另一方面又将继承、实体关系中的引用等在实体的属性中进行展示。逻辑模型介于概念模型和物理模型之间,具有物理模型方面的特性,在概念模型中的多对多关系,在逻辑模型中将会以增加中间实体的一对多关系的方式来实现。 逻辑模型主要是使得整个概念模型更易于理解,同时又不依赖于具体的数据库实现,使用逻辑模型可以生成针对具体数据库管理系统的物理模型。逻辑模型并不是在整个步骤中必须的,可以直接通过概念模型来生成物理模型。 3.  物理数据模型 (PDM) 基于特定DBMS,在概念数据模型、逻辑数据模型的基础上进行设计。由物理数据模型生成数据库,或对数据库进行逆向工程得到物理数据模型。 4.  面向对象模型 (OOM) 包含UML常见的所有的图形:类图、对象图、包图、用例图、时序图、协作图、交互图、活动图、状态图、组件图、复合结构图、部署图(配置图)。OOM 本质上是软件系统的一个静态的概念模型。 5.  业务程序模型 (BPM) BPM 描述业务的各种不同内在任务和内在流程,而且客户如何以这些任务和流程互相影响。 BPM 是从业务合伙人的观点来看业务逻辑和规则的概念模型,使用一个图表描述程序,流程,信息和合作协议之间的交互作用。 6.  信息流模型(ILM) ILM是一个高层的信息流模型,主要用于分布式数据库之间的数据复制。 7.  企业架构模型(EAM): 从业务层、应用层以及技术层的对企业的体系架构进行全方面的描述。包括:组织结构图、业务通信图、进程图、城市规划图、应用架构图、面向服务图、技术基础框架图。 正所谓“工欲善其事必先利其器”,PowerDesigner就是一把强大的“神器”,若能运用自如,再身怀“绝世武功”,那你基本就遇神杀神遇佛杀佛了! 关于PowerDesigner物理数据模型的基本使用,我这里就不废话了,给出个连接,地球人看完都知道:http://www.cnblogs.com/huangcong/archive/2010/06/14/1757957.html 下面就一些比较高级型的用法和技巧我着重说明下。 1.  生成sql脚本 Database→Generate Database 选择要输出的文件路径,即文件存储路径,并根据需要修改文件名,单击确定后便会生成sql脚本。 在Options选项卡里,可以个性化选择和配置sql脚本,如取消外键,去除drop语句等。 Selection选项卡中可以选择哪些表要生成sql脚本。 在Preview选项卡可以预览将要生成的sql脚本。 2.  将所有名词转化为大写 tools→Model Options…→Naming Convention→Code→Uppercase。 3.  表字段设计窗口显示comment来编写注释 双击表打开表的属性窗口→Columns选项卡→单击上排倒数第二个图标(Customize Columns and Filter)→勾选comment 4.  修改表的字段Name的时候,Code不自动跟着变 tools→General Options…→Dialog→取消勾选Name to Code mirroring 5.  不同数据库之间的转化 Database→Change Current DBMS→选择要转换成的目标数据库 6.  导入sql脚本生成相应的数据库表模型图 File→Reverse Engineer→Database…→修改模块名称并选择DBMS Using script files→点击下方图标(Add Files)来添加sql脚本文件→确定 7.  由物理模型生成对象模型,并生成相应的get、set方法 tools→Generate Object-Oriented Model…→选择语言→修改Name和Code→(Selection选项卡→选择要生成对象模型的表)→确定 双击生成的某张表的类图打开属性窗口→选中全部字段→将字段Visibility全部改为private→单击下方Add…按钮→选择Get/Set Operations→确定 之后生成代码即可:Language→Generate Java Code… 【注意:不同语言Add…按钮下的内容有区别,如C#是Property】 6.  […]

龙生   25 Dec 2017
View Details

Kotlin

Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。 Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。 JetBrains,作为目前广受欢迎的Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。 Kotlin已正式成为Android官方支持开发语言。

龙生   23 Dec 2017
View Details

解决“在证书存储区中找不到清单签名证书”

这个问题似乎以前碰到过,不过记不太清了。 程序重新生成,提示错误:在证书存储区中找不到清单签名证书。 可能是之前部署的程序证书被我删掉了或是证书过期了,结果出现这个问题。解决方案如下: 方案1:右击项目属性—>签名—>为ClickOnce清单签名,将勾掉的选项去掉。 方案2:在签名中创建一个新的签名。 方案3:记事本打开相应的csproj文件,调整节点值。<SignManifests>true</SignManifests>将true修改为false。 以上解决方案任选其一,我选了方案一,简单嘛。重新生成,问题搞定!   from:https://www.cnblogs.com/190196539/archive/2011/12/03/2272861.html

龙生   21 Dec 2017
View Details

在Nginx上配置多个站点

有时候你想在一台服务器上为不同的域名运行不同的站点。比如www.siteA.com作为博客,www.siteB.com作为论坛。你可以把两个域名的IP都解析到你的服务器上,但是没法在Nginx的根目录里同时运行两个不同的网站。这时候,你就需要使用虚拟目录了。假设你把博客放在”/home/user/www/blog”下,论坛放在”/home/user/www/forum”下。下面我们就开始配置了: 在Nginx配置目录下,创建一个”vhost”目录。本例假设Nginx是默认安装,配置目录在”/etc/nginx” $ sudo mkdir /etc/nginx/vhost 创建siteA的配置文件 $ sudo vi /etc/nginx/vhost/vhost_siteA.conf 输入以下配置信息 server { listen 80; # 监听端口 server_name www.siteA.com siteA.com; # 站点域名 root /home/user/www/blog; # 站点根目录 index index.html index.htm index.php; # 默认导航页 location / { # WordPress固定链接URL重写 if (!-e $request_filename) { rewrite (.*) /index.php; } } # PHP配置 location ~ \.php$ { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } } 同siteA一样创建siteB的配置文件,两者仅有的不同是”server_name”和”root”目录 $ sudo vi /etc/nginx/vhost/vhost_siteB.conf server { … server_name www.siteB.com siteB.com; # 站点域名 root /home/user/www/forum; # 站点根目录 … } 打开nginx.conf文件 sudo vi /etc/nginx/nginx.conf 将虚拟目录的配置文件加入到”http {}”部分的末尾 http { […]

龙生   21 Dec 2017
View Details

nginx运行php"No input file specified"错误的解决方法

http://www.jbxue.com/article/5649.html 打开一个页面<?php phpinfo(); ?> 然后在游览器下运行:页面提示 No input file specified. FastCGI模式下访问php文件时,出现No input file specified.错误 查看access.log 发现是 404 打开一个页面<?php  phpinfo(); ?>  然后在游览器下运行:页面提示 No input file specified. FastCGI模式下访问php文件时,出现No input file specified.错误 查看access.log 发现是 404 原因分析: 1、任何对.php文件的请求,都简单地交给php-cgi去处理,但没有验证该php文件是否存在。PHP文件不存在,没办法返回普通的404错误,它返回 一个404,并带上一句”No input file specified” 2、还可能跟 路径或者 权限有关系,或者SCRIPT_FILENAME 变量没有被正确的设置(这在nginx是最常见的原因) 1)如果html也出现404错误,那么就是document root 设置的有问题 2)检查脚本文件的权限, 可能PHP或者web server不能读取它 3)SCRIPT_FILENAME设置错误 网上的解决方法: 步骤一:修改nginx主配置文件nginx.conf 默认安装的nginx配置文件中定义fastcgi处是:fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name; 可以将它改成: fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 必须保证 $document_root 在配置文件中,在astcgi_param SCRIPT_FILENAME前面被用到过一次, 后面有解释为什么。 步骤二:修改PHP的住配置文件php.ini 修改/etc/php5/cgi/php.ini中cgi.fix_pathinfo=1 这样也可让php-cgi正常使用SCRIPT_FILENAME这个变量 有人说,这样改也行 fastcgi_param SCRIPT_NAME /home/gavin/nginx/$fastcgi_script_name; 让我们看看PHP对这两个变量是怎么解释的吧 SCRIPT_NAME SCRIPT_FILENAME 据说,必须指定正确的SCRIPT_FILENAME, PHP-CGI会忽略SCRIPT_NAME(即使它的值设置的是正确的) 或者指定特殊的php.ini, 设置doc_root, discard path, fix pathinfo等等 script_filename 只是被用做一种快捷方式。 如果fix_pathinfo设置打开,init函数将它用来决定真实的路径 因为配置文件会改变 nginx的变量$fastcgi_script_name fastcgi_param SCRIPT_NAME /home/gavin/nginx/$fastcgi_script_name; fastcgi_param […]

龙生   20 Dec 2017
View Details

Win7配置Nginx+PHP7

Nginx Nginx有官方native build的32bit版本, 也有cygwin build的64bit版本, 出于稳定性的考虑, 还是选了官方的32bit. 解压, 本例中使用的路径是 C:\Servers\nginx-1.9.12 , 创建两个bat, 用于启动和关闭nginx: start_nginx.bat

stop_nginx.bat

PHP 选的版本是 7.0.4 64位 NTS(非线程安全) VC14, 本例中解压至目录 C:\Servers\php-7.0.4-nts-Win32-VC14-x64 , 使用php.ini-development 创建 php.ini, 修改以下几处, (参考 http://man.chinaunix.net/develop/php/php_manual_zh/html/ini.core.html )

添加扩展, 修改以下几处

启动的命令是

如果需要后台启动PHP CGI, 使用vbs, 创建 startup.vbs

停止PHP CGI, 创建shutdown.bat

Nginx 启用 PHP 修改nginx.conf

重启nginx 注: PHP5.6及以下, 需要将mysql 的 libmysql.dll 拷贝至 C:\Windows\SysWOW64 PHP7貌似已经取消了支持,编译都没有了--with-mysql参数,只支持--with-mysqli和--with-pdo-mysql, 故libmysql.dll已经不需要 如果提示api-ms-win-crt-runtime-l1-1-0.dll丢失, 请安装 visual c++ redistributable 2015, 从微软官网上可以下载. 安装对系统的要求必须在win7 sp1以上, 如果win7还未升级的, 安装会失败.   from:https://www.cnblogs.com/milton/p/5244387.html

龙生   20 Dec 2017
View Details

XMPP

XMPP是一种基于标准通用标记语言的子集XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的顶端建立如内容发布系统和基于地址的服务等应用程序。而且,XMPP包含了针对服务器端的软件协议,使之能与另一个进行通话,这使得开发者更容易建立客户应用程序或给一个配好系统添加功能。

龙生   18 Dec 2017
View Details

三级分销

(一):三级分销简介 三级分销,指的是品牌商可以发展三级分销商[1]  ,每一级分销商均可以往下再发展两级分销商。 一:谁卖出谁拿销售佣金,无论分销商等级产品销售佣金比例一致。分销商可以无限裂变,分销商销售佣金可设置每个级别获取不同。 二:每一个分销商的下级卖出商品,上级分销商可以拿到推广佣金。推广佣金最多三级。 三:分销等级是三级,由于销售产生关系的最多只有三级。每个人都可能成为推广中的一级分销商,拿一级推广佣金。 (二):免费的三级分销系统 目前大部分平台的三级分销都收费,有部分的平台采取免费的形式。 企业可以使用三级分销制系统,让用户就可以加入企业,成为企业的分销商,企业给分销商的返利由企业自主决定。建立外围渠道销售系统,零营销费用或低营销费用实现主动营销、口碑营销,让大众既来消费又是企业的业务人员,又不用支付底薪,降低营销成本。 (三):三级分销的机制 目前的三级分销实行的是末尾三级返佣机制,即能带来购买行为的分销为一级分销商,是直接产生利益的分销,我们记做分销商F。F的上一级分销E为二级分销商,同理,D为三级分销商。商家发展了N多分销,客户小明从分销商F那里购买了商品,那么F获得一级佣金,E二级佣金,D三级佣金,D前面的分销商C,B,A就与此没有关系,也无法获得佣金。 (四):三级分销佣金的分配 通俗的来讲,末尾三级分佣,一级分销商获得佣金最多,因为是能直接为商家带来订单的分销商,发展一级分销商的二级,三级分销商会获得二级、三级佣金。 假设一个商品,价格100,成本60元。商家通过三级分销平台卖出这个商品,商家利润40元,把20元作为推广佣金给他的分销商,其中设定一级佣金为20元的百分之50%,二级佣金设定为20元的百分之30%、三级佣金设定为20元的百分之20%,那么交易一次一级分销就会获得10元佣金,二级获得6元佣金、三级会获得4元佣金。客户有多次交易,有多个客户完成了交易,商家的三个分销商每次都会获得返佣。 (五):三级分销的优势 近几年来,随着网络的普及,越来越多的品牌商,也在纷纷借助于微分销系统的帮助,让商品的销路更广泛。利用三级分销能够树立品牌产品的良好形象,增强产品的信息的传递,让商品有更多机会出现在人们的视野里面,就会给商家带来意想不到的惊喜,从而商品就能够在消费者的心目中树立良好的形象,商品只要是能够让消费者认可,就能够促进商品的销售,企业在进行产品宣传的时候,都是通过微信朋友圈进行商品的宣传,利用这种产品宣传的方式,更容易让人们接受。 from:https://baike.baidu.com/item/%E4%B8%89%E7%BA%A7%E5%88%86%E9%94%80/18870664?fr=aladdin

龙生   18 Dec 2017
View Details

C# ArrayList 与 string、string[] 的转换

1、ArrarList 转换为 string[] ArrayList list = new ArrayList(); list.Add("aaa"); list.Add("bbb"); //转换成数组 string[] arrString = (string[])list.ToArray(typeof( string)); 2、string[] 转换为 ArrarList ArrayList list = new ArrayList(new string[] { "aaa", "bbb" }); 3、ArrayList 转换为 string ArrayList list = new ArrayList(); list.Add("aaa"); list.Add("bbb"); //转换成数组 string str= string.Join(",", (string[])list.ToArray(typeof( string))); 4、string 转换为 ArrayList string str="1,2,3,4,5"; ArrayList b = new ArrayList( str.Split(',') );   from:https://www.cnblogs.com/stone_w/archive/2012/03/21/2409357.html

龙生   14 Dec 2017
View Details
1 211 212 213 432