在软件系统中,行为请求者;与行为实现者通常呈现一种紧耦合。但在某些场合,比如要对行为进行记录、撤销/重做、事务等处理,这种无法抵御变化的紧耦合是不合适的。在这种情况下,如何将行为请求者与行为实现者解耦?将一组行为抽象为对象,可以实现二者之间的松耦合。将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。一,结构二,示例代码publicclassDocument{publicvoiddisplay(
系统 2019-08-12 09:29:28 2588
1.在“UserInterface”-“Dialogs”下,在AllDialogs右击“NewDialogs…”创建自己的Dialogs。2.在“BehaviorandLogic”-“InstallScript”下,在Files右击“NewScriptFile”创建相应函数SdMakeNameif(MODE=SILENTMODE)thenSdMakeName(szAppKey,DLG_ENTERLOGIN,"",nDlgEnterLogin);Silent
系统 2019-08-12 09:26:57 2588
UPDLOCK.UPDLOCK的优点是允许您读取数据(不阻塞其它事务)并在以后更新数据,同时确保自从上次读取数据后数据没有被更改。当我们用UPDLOCK来读取记录时可以对取到的记录加上更新锁,从而加上锁的记录在其它的线程中是不能更改的只能等本线程的事务结束后才能更改,我如下示例:BEGINTRANSACTION--开始一个事务SELECTQtyFROMmyTableWITH(UPDLOCK)WHEREIdin(1,2,3)我做了一个测试:在一个查询里写be
系统 2019-08-12 01:55:36 2588
Vim常用命令及快捷键光标控制命令命令光标移动h或^h向左移一个字符j或^j或^n向下移一行k或^p向上移一行l或空格向右移一个字符G移到文件的最后一行nG移到文件的第n行w移到下一个字的开头W移到下一个字的开头,忽略标点符号b移到前一个字的开头B移到前一个字的开头,忽略标点符号L移到屏幕的最后一行M移到屏幕的中间一行H移到屏幕的第一行e移到下一个字的结尾E移到下一个字的结尾,忽略标点符号(移到句子的开头)移到句子的结尾{移到段落的开头}移到下一个段落的开
系统 2019-08-12 01:55:19 2588
--=================================--SQL基础-->分组与分组函数--=================================/*一、分组:分组函数可以对行集进行操作,并且为每组给出一个结果。使用groupbycolumn1,column2,..按columm1,column2进行分组,即column1,column2组合相同的值为一个组二、常用分组函数:*/AVG([DISTINCT|ALL]n)--求平均
系统 2019-08-12 01:54:23 2588
■创建数据文件的SQL语句及说明CREATETABLESPACE创建一个表空间和组成它的数据文件CREATETEMPORARYTABLESPACE创建一个临时表空间和组成它的临时数据文件(临时数据文件是一种特殊类型的数据文件)ALTERTABLESPACE...ADDDATAFILE创建并添加一个数据文件到表空间ALTERTABLESPACE...ADDTEMPFILE创建并添加一个临时数据文件到临时表空间CREATEDATABASE创建一个数据库和关联的
系统 2019-08-12 01:53:31 2588
好久没写博客了,最近这段项目再在迁移所以有点忙.下面是这段时间学习并用到的命令.首先查询当前目录信息select*fromdba_directories;1.导出数据库.首先赋予用户对目录的权限,然后再导出log为日志.Ⅰ:SQL>>createorreplacedirectoryexportDIRas'/opt/oracle/oradata';Ⅱ:SQL>>grantread,writeondirectoryexportDIRtouserX;Ⅲ:[cmd
系统 2019-08-12 01:52:07 2588
在java的web工程中,我们想更改项目名,常常发现改完项目名之后部署在服务器的名字还是原来的项目名称,这时我们需要做的是:项目名右键--->Properties-->MyEclipse-->Web-->WebContextroot,就可以更改成功了。Myeclipse更改web工程的项目名
系统 2019-08-12 01:33:41 2588
原文:http://tech.pro/tutorial/1300/deep-dive-into-requirejsby:JonathanCreamer现在,Require.js是我最喜欢的Javascript编程方式。它可以使代码化整为零,并易于管理。而Require.jsOptimizer能帮助我们将一个较大的应用分散成多个较小的应用,并通过依赖串联起来,最后在编译打包时合并起来。这些原因促使我们使用require.js。那么,让我们来看看require
系统 2019-08-12 01:33:11 2588
原文:JamesClarkonXML,JSONandlotsofotherstuff在xml领域中最耀眼的人物(没有冒犯Tim吧)刚刚开始写blog了。在schema的状态和角色,以及后来的JSON上,我都很欣赏他的分析。我们中的一帮人都正在努力工作,其目标是使Microsoft朝着更加结构化的类型处理发展-----希望我们好运吧。与James不同的是,我不会过分强调人们一定要用编程语言来定义schema。也就是说,对于描述结构化的数据,我由衷的认为,这个
系统 2019-08-12 01:33:02 2588