一切福田,不離方寸,從心而覓,感無不通。

UML建模工具中EA和Rose的比较

本节和大家一起看一下UML建模工具比较,主要介绍了UML建模的特性中EA和Rose的UML图建模比较,EA和Rose的UMLProfile比较两部分内容,相信通过对比我们能够找到更加实用的建模工具,下面就让我们一起来看一下UML建模工具的比较吧。 UML建模工具比较 自从1997年正式发布UML以后,大量商用UML建模CASE工具粉墨登场。这样为我们提供了许多的选择,同时也要求我们在选择正确的UML建模工具以更好地适应我们业务和软件应用程序开发需求,达到最好的投资回报率(ROI)方面做大量的调查。在这篇文章中,我们将比较两款CASE工具的UML建模能力、双向工程特性和项目生命周期支持:SparxSystems的EnterpriseArchitect(EA)专业版V.3.51和IBMRational的RationalRose企业版V.2002。 为什么我们需要UML建模CASE工具? 今天,系统的构建变得越来越复杂,UML建模CASE工具为项目相关人员(如,项目经理,分析员,设计者,构架师,开发者等)提供了许多的好处。UML建模CASE工具允许我们应用规范的面向对象分析和设计的方法与理论,远离纠缠不清的源代码,达到构建和设计变得更直观,更容易地理解与修改的层次。在大型项目中,使用CASE工具更重要。通过使用CASE工具: ◆通过用例模型,业务/系统分析可以捕获到业务/系统需求。 ◆设计者/构架师所作的设计模型能在不同层次的同一层内清晰表达对象或子系统之间的交互(典型的UML图如类图和交互图)。 ◆开发者能快速地将模型转变为一个可运行的应用程序,寻找类和方法的子集,以及理解它们如何交互。模型被看作是蓝图和构建系统的最终手册。同样,建模也就是一种从高层并以适当的形式来考虑一个设计的表述和理解它怎样运行的能力。出于这些动机,UMLCASE工具以及对应的方法论为我们提供了一种因系统太复杂而不能理解下层源代码的描述系统的方法,同时允许我们更快更便宜地开发正确的软件解决方案。当然,要考虑CASE工具在UML建模能力,项目生命周期支持,双向工程,数据建模,性能,价格,可支持性,易使用性等方面的不同。这篇文章将探索Rose与EA在UML建模,项目生命周期支持以及双向工程领域的相同点和不同点,希望能帮助你在你的项目中选择正确的工具。 UML建模工具特性 UML标准由三部分组成,即:构造块(如对象,类,消息),构造块间的关系(如关联,泛化)和图(如,活动图)。UMLprofile使用UML可扩展性机制扩展标准UML符号,即,构造型,标注值和约束。EA专业版V.3.51和RationalRoseV.2002.05都支持UML1.4 九种图中的八种标准UML图-用例图,类图,序列图,协作图,活动图,状态图,实现图(组件)图,部署图,和几种UMLProfiles.如果需要,对象图可以使用协作图来创建。不同点仅仅存在于创建UML图(表1)和扩展UMLprofiles时所支持的一些特性。 表1.UML建模工具中EA和Rose的UML图建模比较 EnterpriseArchitect有一个通用的UMLprofile机制用来加载和运行不同的Profiles。EnterpriseArchitect为UMLprofiles指定一个特定格式的XML文件。而在RationalRose中却需要生成一个附加项。 表2展示了在EA和Rose中UMLprofiles的可用性。 表2.UML建模工具中EA和Rose的UMLProfile比较 【编辑推荐】 五个免费UML建模工具推荐 如何选择一种UML建模工具 UML建模工具Apollo for Eclipse 1.1发布 UML建模工具UMLGraph 4.3 发布 UML建模工具比较

龙生   15 Jun 2013
View Details

Asp.net MVC2中使用Ajax的三种方式

      在Asp.net MVC中,我们能非常方便的使用Ajax。这篇文章将介绍三种Ajax使用的方式,分别为原始的Ajax调用、Jquery、Ajax Helper。分别采用这三种方式结合asp.net mvc去实现一个史上最简单的留言板。     首先看一下原始的Ajax的调用的      定义CommentController,代码如下:

    在Asp.net MVC中添加一个custom_ajax.js,加入下面使用ajax的脚本代码,调用AddCommentServer方法。

    在View中引入此脚本,创建一个简单的表单,并添加触发的代码:

    添加下面脚本:

 

   效果:与方式一效果一样

    1、首先了解一下Ajax Helper下面四种方法。         a、Ajax.ActionLink():它将渲染成一个超链接的标签,类似于Html.ActionLink()。当它被点击之后,将获取新的内容并将它插入到HTML页面中。         b、Ajax.BeginForm():它将渲染成一个HTML的Form表单,类似于Html.BeginForm()。当它提交之后,将获取新的内容并将它插入到HTML页面中。         c、Ajax.RouteLink():Ajax.RouteLink()类似于Ajax.ActionLink()。不过它可以根据任意的routing参数生成URL,不必包含调用的action。使用最多的场景是自定义的IController,里面没有action。         d、Ajax.BeginRouteForm():同样Ajax.BeginRouteForm()类似于Ajax.BeginForm()。这个Ajax等同于Html.RouteLink()。     这个例子中使用Ajax.BeginForm(),下面具体了解Ajax.BeginForm()的参数。看下面代码

    actionName:AddComment(action的名字)     controllerName:CommentController(Controller的名字)     ajaxOptions:          HttpMethod:Ajax的请求方式,这里为POST           UpdateTargetId :Ajax请求的结果显示的标签的ID,这里为comments          InsertionMode:将Ajax结果插入页面的方式,这里将ajax的结果放置到comments的后面 2、实现:     在CommentController中添加IndexAjaxHelp方法。

      根据IndexAjaxHelp生成View表单IndexAjaxHelp.aspx,定义表单:

    要在此View中添加下面两个脚本文件:

   这样就行了,我们发现比用Jquery方便很多,但是使用Jquery将灵活很多。      3、效果:和方式一样。 总结:本文非常的简单,在asp.net mvc中实现了3中ajax的调用方式,实现了一个最简单的留言板程序。推荐使用Jquery和Ajax Helper这两种。Ajax Helper使用非常简单,Jquery比较灵活。 更新:三种方式都实现了一个最简单的留言板程序 参考:     ASP.NET MVC 2 In Action     Pro ASP.NET MVC 2 Framework, Second Edition   代码:http://files.cnblogs.com/zhuqil/AjaxDemo.rar   作者:朱祁林出处:http://zhuqil.cnblogs.com本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。  

龙生   14 Jun 2013
View Details

生成缩略图

龙生   06 Jun 2013
View Details

Normalize.css

Normalize.css 是一个可以定制的CSS文件,它让不同的浏览器在渲染网页元素的时候形式更统一。 官网:http://necolas.github.io/normalize.css/

龙生   06 Jun 2013
View Details

CSS 框架 Yahoo Pure

Pure 是来自雅虎的 CSS 框架,使用 Normalize.CSS 无需任何 JavaScript 代码。框架基于响应式设计,提供多种样式的组件,包括表格、表单、按钮、表、导航等。标识使用非常简单,整个框架非常轻量级,压缩后只有 5.7k。 官网:http://purecss.io/ 设计器:http://yui.github.io/skinbuilder/?mode=pure

龙生   06 Jun 2013
View Details

PHP中一些通用和易混淆技术点的最佳编程实践

我们使用的是哪个 PHP 版本? 带有 Suhosin-补丁的PHP 5.3.10-1ubuntu3.6, 安装于 Ubuntu 12.04 LTS. PHP如同是网络世界的百年老龟。它的外壳上刻有一个丰富的,令人费解的,粗糙的历史。在一个共享主机的环境下,它的配置可能会限制你能做什么事情。 为了保留一丝明智,我们需要只专注于一个版本的PHP。截至2013年4月30,该版本是 带有Suhosin补丁的PHP5.3.10-1ubuntu3.6 。如果你使用apt-get从一个Ubuntu12.04 LTS服务器来安装PHP的话,你所得到的版本就是这个。换句话说,许多人在默认情况下已经很明智地使用了它。 您可能会发现本文这些解决方案能工作于不同或更旧版本的PHP。如果是这样的话,就要由你来研究在这些旧版本中的细微错误或安全问题的影响了。 保存密码 使用 phpass 库计算密码的哈希值进行比较。 用 phpass 0.3 进行的测试。 散列化是在把用户密码保存进数据库之前对其进行保护的标准方法。许多常见的散列算法,如MD5,乃至SHA1,用于存储密码都是不安全的,因为黑客可以使用这些散列算法轻松破解密码。 要散列化密码最安全的方法是使用bcrypt算法。开源的phpass 库用一个易于使用的类来提供这个功能。 例子: view source print? 01 <?php 02 // 包含phpass库 03 require_once('phpass-0.3/PasswordHash.php'); 04 05 // 初始化散列器为不可移植(这样更安全) 06 $hasher= newPasswordHash(8, false); 07 08 // 计算密码哈希值。$hashedPassword 将会是一长为60个字符的字符串. 09 $hashedPassword= $hasher->HashPassword('my super cool password'); 10 11 // 你现在可以安全地保存$hashedPassword到数据库中! 12 13 // 通过比较用户输入内容(产生的哈希值)和我们之前计算出的哈希值,来判断用户是否输入了正确的密码 14 $hasher->CheckPassword('the wrong password', $hashedPassword); // 返回假 15 16 $hasher->CheckPassword('my super cool password', $hashedPassword); // 返回真 17 ?> 陷阱 很多来源会建议你在计算密码的哈希值之前先给密码加点“作料”。这是个好主意,phpass已经利用HashPassword() 函数中的一部分代码来为你给密码加了作料。 这就意味着你并不需要自己再亲自做这个了。 进一步阅读 […]

龙生   04 Jun 2013
View Details

CSS制作框架 Sass

Sass 扩展了 CSS3,增加了规则、变量、混入、选择器、继承等等特性。Sass 生成良好格式化的 CSS 代码,易于组织和维护。 官网:http://sass-lang.com/

龙生   04 Jun 2013
View Details

10个SQL注入工具

众所周知,SQL注入攻击是最为常见的Web应用程序攻击技术。同时SQL注入攻击所带来的安全破坏也是不可弥补的。以下罗列的10款SQL注入工具可帮助管理员及时检测存在的漏洞。 BSQL Hacker 10个SQL注入工具 BSQL Hacker是由Portcullis实验室开发的,BSQL Hacker 是一个SQL自动注入工具(支持SQL盲注),其设计的目的是希望能对任何的数据库进行SQL溢出注入。 BSQL Hacker的适用群体是那些对注入有经验的使用者和那些想进行自动SQL注入的人群。BSQL Hacker可自动对Oracle和MySQL数据库进行攻击,并自动提取数据库的数据和架构。 The Mole 10个SQL注入工具 The Mole是一款开源的自动化SQL注入工具,其可绕过IPS/IDS(入侵防御系统/入侵检测系统)。只需提供一个URL和一个可用的关键字,它就能够检测注入点并利用。The Mole可以使用union注入技术和基于逻辑查询的注入技术。The Mole攻击范围包括SQL Server、MySQL、Postgres和Oracle数据库。 Pangolin 10个SQL注入工具 Pangolin是一款帮助渗透测试人员进行SQL注入(SQL Injeciton)测试的安全工具。Pangolin与JSky(Web应用安全漏洞扫描器、Web应用安全评估工具)都是NOSEC公司的产品。Pangolin具备友好的图形界面以及支持测试几乎所有数据库(Access、MSSql、MySql、Oracle、Informix、DB2、Sybase、PostgreSQL、Sqlite)。Pangolin能够通过一系列非常简单的操作,达到最大化的攻击测试效果。它从检测注入开始到最后控制目标系统都给出了测试步骤。Pangolin是目前国内使用率最高的SQL注入测试的安全软件。 Sqlmap 10个SQL注入工具 Sqlmap是一个自动SQL 注入工具。其可胜任执行一个广泛的数据库管理系统后端指纹, 检索DBMS数据库、usernames、表格、列、并列举整个DBMS信息。Sqlmap提供转储数据库表以及MySQL、PostgreSQL、SQL Server服务器下载或上传任何文件并执行任意代码的能力。 Havij 10个SQL注入工具 Havij是一款自动化的SQL注入工具,它能够帮助渗透测试人员发现和利用Web应用程序的SQL注入漏洞。Havij不仅能够自动挖掘可利用的SQL 查询,还能够识别后台数据库类型、检索数据的用户名和密码hash、转储表和列、从数据库中提取数据,甚至访问底层文件系统和执行系统命令,当然前提是有 一个可利用的SQL注入漏洞。Havij支持广泛的数据库系统,如 MsSQL, MySQL, MSAccess and Oracle。 Havij支持参数配置以躲避IDS,支持代理,后台登陆地址扫描。 Enema SQLi 10个SQL注入工具 Enema SQLi与其他 SQL注入工具不同的是,Enema SQLi不是自动的,想要使用Enema SQLi需要一定的相关知识。Enema SQLi能够使用用户自定义的查询以及插件对SQL Server和MySQL数据库进行攻击。支持基于error-based、Union-based和blind time-based的注入攻击。 SQLninja 10个SQL注入工具 SQLninja软件用Perl编写,符合GPLv2标准。SQLninja的目的是利用Web应用程序中的SQL注入式漏洞,它依靠微软的SQL Server作为后端支持。其主要的目标是在存在着漏洞的数据库服务器上提供一个远程的外壳,甚至在一个有着严格的防范措施的环境中也能如此。在一个SQL注入式漏洞被发现以后,企业的管理员特别是渗透攻击的测试人员应当使用它,它能自动地接管数据库服务器。现在市场上有许多其它的SQL注入式漏洞工具,但SQLninja与其它工具不同,它无需抽取数据,而着重于在远程数据库服务器上获得一个交互式的外壳,并将它用作目标网络中的一个立足点。 sqlsus 10个SQL注入工具 sqlsus是一个开放源代码的MySQL注入和接管工具,sqlsus使用perl编写并基于命令行界面。sqlsus可以获取数据库结构,注入你自己的SQL语句,从服务器下载文件,爬行web站点可写目录,上传和控制后门,克隆数据库等。 Safe3 SQL Injector 10个SQL注入工具 Safe3 SQL Injector是一个最强大和最易使用的渗透测试工具,它可以自动检测和利用SQL注入漏洞和数据库服务器的过程中。Safe3 SQL Injector具备读取MySQL、Oracle、PostgreSQL、SQL Server、Access、SQLite、Firebird、Sybase、SAP MaxDB等数据库的能力。同时支持向MySQL、SQL Server写入文件,以及SQL Server和Oracle中执行任意命令。Safe3 SQL Injector也支持支持基于error-based、Union-based和blind time-based的注入攻击。 SQL Poizon 10个SQL注入工具 SQL Poizon的图形界面使用户无需深厚的专业知识便能够进行攻击,SQL Poizon扫描注入工具内置浏览器可帮助查看注入攻击带来的影响。SQL Poizon充分利用搜索引擎“dorks”扫描互联网中存在SQL注入漏洞的网站。(李智/编辑) 转自:http://blog.jobbole.com/17763/

龙生   03 Jun 2013
View Details

WebSocket

目标 WebSocket 规范的目标是在浏览器中实现和服务器端双向通信。双向通信可以拓展浏览器上的应用类型,例如实时的数据推送(股票行情)、游戏、聊天等. 背景 目前在浏览器中通过http仅能实现单向的通信,comet可以一定程度上模拟双向通信,但效率较低,并需要服务器有较好的支持; flash中的socket和xmlsocket可以实现真正的双向通信,通过 flex ajax bridge,可以在javascript中使用这两项功能. 可以预见,如果websocket一旦在浏览器中得到实现,将会替代上面两项技术,得到广泛的使用.面对这种状况,HTML5定义了WebSocket协议,能更好的节省服务器资源和带宽并达到实时通讯。 原理 WebSocket protocol 是HTML5一种新的协议(protocol)。它是实现了浏览器与服务器全双工通信(full-duplex)。 现在,很多网站为了实现即时通讯(real-time),所用的技术都是轮询(polling)。轮询是在特定的的时间间隔(time interval)(如每1秒),由浏览器对服务器发出HTTP request,然后由服务器返回最新的数据给客服端的浏览器。这种传统的HTTP request d的模式带来很明显的缺点 – 浏览器需要不断的向服务器发出请求(request),然而HTTP request 的header是非常长的,里面包含的数据可能只是一个很小的值,这样会占用很多的带宽。 而最比较新的技术去做轮询的效果是Comet – 用了AJAX。但这种技术虽然可达到全双工通信,但依然需要发出请求(reuqest)。 在 WebSocket API,浏览器和服务器只需要要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道。两者之间就直接可以数据互相传送。在此WebSocket 协议中,为我们实现即时服务带来了两大好处: 1. Header 互相沟通的Header是很小的-大概只有 2 Bytes 2. Server Push 服务器可以主动传送数据给客户端  握手协议 在实现websocket连线过程中,需要通过浏览器发出websocket连线请求,然后服务器发出回应,这个过程通常称为“握手” (handshaking)。 PS1:握手协议在后期的版本中,会标明版本编号,下面的例子属于早期的协定之一,对于新版的 chrome 和 Firefox 皆不适用。 PS2:后期的版本大多属于功能上的扩充,例如使用第7版的握手协议同样也适用于第8版的握手协议。 例子: 浏览器请求 GET /demo HTTP/1.1 Host: 你的网址.com Connection: Upgrade Sec-WebSocket-Key2: 12998 5 Y3 1 .P00 Sec-WebSocket-Protocol: sample Upgrade: WebSocket Sec-WebSocket-Key1: 4 @1 46546xW%0l 1 5 Origin: http://你的网址.com ^n:ds[4U 服务器回应 HTTP/1.1 101 WebSocket Protocol Handshake Upgrade: WebSocket Connection: Upgrade Sec-WebSocket-Origin: http://你的网址.com […]

龙生   03 Jun 2013
View Details

河南省住房公积金个人账户查询

  河南省直住房公积金个人账户查询: 点击进入>>>   你还可以以下方式查询:  为方便省直职工查询住房公积金, 省直机关住房资金管理中心提供了多种方便快捷的查询途径,包括中心柜台查询、印发邮政信函(个人对账单)、95533电话查询、多媒体查询机、建行ATM自动柜员机及公益性住房公积金手机短信查询等多种查询渠道。  现将其查询方法介绍如下:  1、中心柜台查询需本人携带个人身份证和公积金龙卡到省直资金中心一楼业务大厅办理。  2、多媒体查询职工需在中心多媒体机上插公积金龙卡进行实时查询。  3、95533电话查询需拨打95533电话,输入公积金龙卡卡号和查询密码,并按照提示音操作即可。  4、ATM机查询职工需在建行ATM自动柜员机中插入公积金龙卡,输入交易密码即可查询公积金余额和储蓄余额。  5、手机短信查询目前可通过移动公司手机进行查询,免收信息费。查询方法:  1、发送“CZ(或88)+身份证号+空格+密码”到“106573023798”  2、发送“CZ(或88)+龙卡卡号+空格+密码”到“106573023798”  修改密码方法:(初始查询密码为“000000”)  1、发送“XM(或66)+身份证号+空格+旧密码+空格+新密码”到“106573023798”  2、发送“XM(或66)+龙卡卡号+空格+旧密码+空格+新密码”到“106573023798”  业务咨询电话:65909463 65908401   各地市的住房公积金查询请进入本页面的上一级目录,找到并打开该市的公积金查询链接即可查询。   河南省直机关住房资金管理中心  主要负责省直单位职工住房公积金归纳、使用、核算和管理工作。  地址:河南省郑州市经三路6号  邮 编:450007  电 话:0371-65909463 65908401   网址: http://www.hnszgjj.com/   转自:http://ha.cnpension.net/sbcx/2010-01-04/1019490.html

龙生   03 Jun 2013
View Details
1 5 6