- 博客(26)
- 收藏
- 关注
深入visitor模式
一,访问者模式的角色:抽象访问者:声明一个或者多个访问操作,形成所有的具体元素都要实现的接口具体访问者:实现抽象访问者所声明的接口抽象节点:声明一个接受操作,接受一个访问者对象作为参量具体节点:实现了抽象元素所规定的接受操作结构对象:遍历结构中的所有元素,类似List Set等二,在什么情况下应当使用访问者模式访问者模式应该用在被访问类结构比较稳定的时候,换言之系统很少出现增加新节点的情况。因为访...
2006-12-21 12:03:00
120
服务器管理朝标准看齐
味着标准本身的一些条款也许就是来自一些厂商的议程,从而代表了这些厂商的意愿。不过,最终用户企业会对这些系统进行类似“核查”,也就是接受并扩展某种标准,还是置之不理。总体来看,这些厂商还是做了一件好事,他们试图找到共同点来帮助IT产业整体向前发展。 以SMI-S为例来说,它是被SNIA(Storage Networking Industry Association,存储网络工业协会)内部运作的一个...
2006-12-21 11:58:00
155
pl/sql语言入门
PL/SQL是ORACLE的过程化语言,包括一整套的数据类型、条件结构、循环结构和异常处理结构,PL/SQL可以执行SQL语句,SQL语句中也可以使用PL/SQL函数。 默认安装完Oracle后,初学者应该了解下面的一些SQL语句: 1、连接 SQL*Plus system/manager 2、显示当前连接用户 ...
2006-12-21 09:35:00
145
数据库安全导读
各种应用系统的数据库中大量数据的安全问题、敏感数据的防窃取和防篡改问题,越来越引起人们的高度重视。 <iframe width="360" scrolling="no" height="300" frameborder="0" src="http://www.techtarget.com.cn/ttfiles/ttimages/cmsflash/database_pip.htm...
2006-12-21 09:32:00
167
SQL Server数据库性能优化
设计1个应用系统似乎并不难,但是要想使系统达到最优化的性能并不是一件容易的事。在开发工具、数据库设计、应用程序的结构、查询设计、接口选 择等方面有多种选择,这取决于特定的应用需求以及开发队伍的技能。本文以SQL Server为例,从后台数据库的角度讨论应用程序性能优化技巧,并且给出了一些有益的建议。 1 数据库设计 要在良好的SQL Server方案中实现最优的性能,最关键的是要有1个很好...
2006-12-21 09:27:00
90
SQL Server基本函数详细介绍
1、字符串函数 长度与分析用 datalength(Char_expr) 返回字符串包含字符数,但不包含后面的空格 substring(expression,start,length) 不多说了,取子串 right(char_expr,int_expr) 返回字符串右边int_expr个字符 字符操作类 upper(char_expr) 转为大写 lower(char_expr) 转...
2006-12-21 09:25:00
142
10个最好的Windows 2003命令行函数
Windows的命令行程序是系统管理程序的支柱。然而我遍查了Windows Server 2003的附加软件,我从来没有报道过Windows系统内建的最有用的命令行程序。这些命令的用处体现在许多方面。当你需要做一个快速的修复工作,或者 你要写一个批处理文件作为预定任务或一个大任务的一部分就会很有用。 我从Windows Server 2003中精选了几个非常有用但通常没有被很好理解的命令。...
2006-12-21 09:13:00
147
深入Java的异常机制
由于本文旨在探讨Java"异常机制"的深层原理,因此关于"异常"的使用方法都不做详细说明。首先看一段非常熟悉的用于打开一个文件的C程序段: FILE *fp; fp=fopen(filename,"rw"); if(fp==NULL){ printf("cannot open file\n"); exit(0); } 在这段程序中,if条件语句中的一段用来处理没有找到指定...
2006-12-21 09:00:00
92
Java SE 6.0新功能:让界面更加绚丽
在这篇文章中我将介绍Java SE 6.0另外几种新的GUI功能。这些功能是: 带有排序和过滤功能的JTable。 增强的JTabbedPane组件 增强的打印功能 增强的拖放功能 带有排序和过滤功能的JTable 在Java SE 6中除了java.awt被更新外,javax.swing同时也有了很大的改进。在C/S程序中我们会经常使用到"表"。如...
2006-12-19 16:08:00
117
有效编写软件的75条建议
1. 你们的项目组使用源代码管理工具了么? 应该用。VSS、CVS、PVCS、ClearCase、CCC/Harvest、FireFly都可以。我的选择是VSS。2. 你们的项目组使用缺陷管理系统了么? 应该用。ClearQuest太复杂,我的推荐是BugZilla。 3. 你们的测试组还在用Word写测试用例么? 不要用Word写测试用例(Test Case)。应该用一个专门的系统,可以...
2006-12-19 14:33:00
382
减少对象的创建提高java性能
许多通常的 Java 性能问题都起源于在设计过程早期中的类设计的思想, 早在许多开发者开始考虑性能问题之前. 在这个系列中, Brian Goetz 讨论了通常的 Java 性能上的冒险以及怎么在设计时候避免它们. 在第二部分, 他讨论了减少临时对象创建的一些技术。<o:p></o:p> 虽然许多程序员把性能管理一直推迟到开发过程的最后, 性能考虑应该从第一天起就和...
2006-12-18 16:16:00
285
web.xml配置的详细说明
1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始。这个头声明可以使用的XML版本并给出文件的字符编码。 DOCYTPE声明必须立即出现在此头之后。这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义)。 所有部署描述符文件的顶层(根)元素为we...
2006-12-17 21:31:00
150
常用算法设计方法之动态规划法
经常会遇到复杂问题不能简单地分解成几个子问题,而会分解出一系列的子问题。简单地采用把大问题分解成子问题,并综合子问题的解导出大问题的解的方法,问题求解耗时会按问题规模呈幂级数增加。<o:p></o:p>为了节约重复求相同子问题的时间,引入一个数组,不管它们是否对最终解有用,把所有子问题的解存于该数组中,这就是动态规划法所采用的基本方法。以下先用实例说明动态规划方法的使用。&...
2006-12-17 21:28:00
150
常用算法设计方法之分治法
<o:p> </o:p>1、分治法的基本思想<o:p></o:p>任何一个可以用计算机求解的问题所需的计算时间都与其规模N有关。问题的规模越小,越容易直接求解,解题所需的计算时间也越少。例如,对于n个元素的排序问题,当n=1时,不需任何计算;n=2时,只要作一次比较即可排好序;n=3时只要作3次比较即可,…。而当n较大时,问题就不那么容易处理了。要想...
2006-12-17 21:27:00
224
常用算法设计方法之穷举搜索法
穷举搜索法是对可能是解的众多候选解按某种顺序进行逐一枚举和检验,并从众找出那些符合要求的候选解作为问题的解。<o:p></o:p>【问题】 将A、B、C、D、E、F这六个变量排成如图所示的三角形,这六个变量分别取[1,6]上的整数,且均不相同。求使三角形三条边上的变量之和相等的全部解。如图就是一个解。<o:p></o:p>程序引入变量a、b、c、...
2006-12-17 21:19:00
262
常用算法设计方法之迭代法
迭代法是用于求方程或方程组近似根的一种常用的算法设计方法。设方程为f(x)=0,用某种数学方法导出等价的形式x=g(x),然后按以下步骤执行:<o:p></o:p>(1) 选一个方程的近似根,赋给变量x0;<o:p></o:p>(2) 将x0的值保存于变量x1,然后计算g(x1),并将结果存于变量x0;<o:p></o:p&...
2006-12-17 21:16:00
299
教你掌握正则表达式
1. 什么是正则表达式基本说来,正则表达式是一种用来描述一定数量文本的模式。Regex代表Regular Express。本文将用<<regex>>来表示一段具体的正则表达式。一段文本就是最基本的模式,简单的匹配相同的文本。2. 不同的正则表达式引擎正则表达式引擎是一种可以处理正则表达式的软件。通常,引擎是更大的应用程序的一部分。在软件世界,不同的正则表...
2006-12-06 10:17:29
90
经典SQL语句
说明:复制表(只复制结构,源表名:a 新表名:b)SQL: select * into b from a where 1<>1 说明:拷贝表(拷贝数据,源表名:a 目标表名:b)SQL: insert into b(a, b, c) select d,e,f from b; 说明:显示文章、提交人和最后回复时间SQL: select a.title,a.username,b.add...
2006-12-05 17:59:49
99
Spring AOP中文教程
AOP正在成为软件开发的下一个圣杯。使用AOP,你可以将处理aspect的代码注入主程序,通常主程序的主要目的并不在于处理这些aspect。AOP可以防止代码混乱。 为了理解AOP如何做到这点,考虑一下记日志的工作。日志本身不太可能是你开发的主程序的主要任务。如果能将“不可见的”、通用的日志代码注入主程序中,那该多好啊。AOP可以帮助你做到。 Spring framework是很有前途的AOP技...
2006-12-05 15:22:08
90
ant的使用(下)
四:编写build.xmlbuild.xml相当Linux下的makefile,具体的实现都在build.xml中实现。我给给例子说明一下。build.xml================================================================<project name="bingo" default="build" basedir="../.." ...
2006-12-05 15:09:19
77
ant的使用(上)
一:介绍:ant 是jakarta的一个编译工具,如果你了解linux/Unix下的makefile你就很容易理解ant的用途了。ant最适合你使用UltraEdit(EditPlus)写java程序,然后你使用ant去编译,同时javadoc ,生成一个jar,war,实现文件的copy都可以在build.xml通过不同的tager去实现,还是很方便的一个东东强烈推荐是使用。二:下载你可以从下面...
2006-12-05 15:08:00
124
代码复用的规则(下)
消除case / if语句 要尽量避免在代码中出现判断语句,来测试一个对象是否某个特定类的实例。通常,如果你需要这么做,那么,重新设计可能会有所帮助。我在工作中遇到这样的一个问题:我们在使用JAVA做XML解析时,对每个标签映射了一个JAVA类,采用SAX(简单的XML接口API:Simple API for XML)模型。结果,代码中反复出现了大量的判断语句,来测试当前的标签类型。为此,我...
2006-12-05 13:55:35
127
代码复用的规则(上)
代码复用是绝大多数程序员所期望的,也是OO的目标之一。总结我多年的编码经验,为了使代码能够最大程度上复用,应该特别注意以下几个方面。 对接口编程 "对接口编程"是面向对象设计(OOD)的第一个基本原则。它的含义是:使用接口和同类型的组件通讯,即,对于所有完成相同功能的组件,应该抽象出一个接口,它们都实现该接口。具体到JAVA中,可以是接口(interface),或者是抽象类(abstr...
2006-12-05 13:53:00
111
探究需求管理的本质
本文旨在探究需求管理的本质,需求管理所要涉及的任务在文中将适时提及,以阐释"需求管理之需求(requirements for requirements)"的涵义。☆概要 需求管理恰如裁缝的量体裁衣,它直接关系到最终产品的成型。仅从字面出发,如果一个产品满足了客户需求,那它无疑就是成功的。需求管理的过程,从需求分析开始贯穿整个项目始终,力图实现最终产品同需求性的最佳结合(参见Figure 1...
2006-12-05 13:24:25
102
关于网络上IP地址校验正则表达式的一点缺陷
网络上常见的代码如下:static boolean isIpAddress(String s){ String regex = "(((2[0-4]\\d)|(25[0-5]))|(1\\d{2})|([1-9]\\d)|(\\d)).(((2[0-4]\\d)|(25[0-5]))|(1\\d{2})|([1-9]\\d)|(\\d)).(((2[0-4]\\d)|(25[0-5...
2006-12-04 16:13:00
114
教你掌握正则表达式
1. 什么是正则表达式基本说来,正则表达式是一种用来描述一定数量文本的模式。Regex代表Regular Express。本文将用<<regex>>来表示一段具体的正则表达式。一段文本就是最基本的模式,简单的匹配相同的文本。2. 不同的正则表达式引擎正则表达式引擎是一种可以处理正则表达式的软件。通常,引擎是更大的应用程序的一部分。在软件世界,不同的正则表达式并不互相兼容。本...
2006-12-04 10:13:00
70
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人