• 运行命令大全
    [推荐]windows【开始】→【运行】命令集锦
    winver---------检查windows版本
    wmimgmt.msc----打开windows管理体系结构(wmi)
    wupdmgr--------windows更新程序
    wscript--------windows脚本宿主设置
    write----------写字板
    winmsd---------低承畔?
    wiaacmgr-------扫描仪和照相机向导
    winchat--------xp自带局域网聊天
    mem.exe--------显示内存使用情况
    msconfig.exe---系统配置实用程序
    mplayer2-------简易widnows media player
    mspaint--------画图板
    mstsc----------远程桌面连接
    mplayer2-------媒体播放机
    magnify--------放大镜实用程序
    mmc------------打开控制台
    mobsync--------同步命令
    dxdiag---------检查directx信息
    drwtsn32------ 系统医生
    devmgmt.msc--- 设备管理器
    dfrg.msc-------磁盘碎片整理程序
    diskmgmt.msc---磁盘管理实用程序
    dcomcnfg-------打开系统组件服务
    ddeshare-------打开dde共享设置
    dvdplay--------dvd播放器
    net stop messenger-----停止信使服务
    net start messenger----开始信使服务
    notepad--------打开记事本
    nslookup-------网络管理的工具向导
    ntbackup-------系统备份和还原
    narrator-------屏幕“讲述人”
    ntmsmgr.msc----移动存储管理器
    ntmsoprq.msc---移动存储管理员操作请求
    netstat -an----(tc)命令检查接口
    syncapp--------创建一个公文包
    sysedit--------系统配置编辑器
    sigverif-------文件签名验证程序
    sndrec32-------录音机
    shrpubw--------创建共享文件夹
    secpol.msc-----本地安全策略
    syskey---------系统加密,一旦加密就不能解开,保护windows xp系统的双重密码
    services.msc---本地服务设置
    sndvol32-------音量控制程序
    sfc.exe--------系统文件检查器
    sfc /scannow---windows文件保护
    tsshutdn-------60秒倒计时关机命令
    tourstart------xp简介(安装完成后出现的漫游xp程序)
    taskmgr--------任务管理器
    eventvwr-------事件查看器
    eudcedit-------造字程序
    explorer-------打开资源管理器
    packager-------对象包装程序
    perfmon.msc----计算机性能监测程序
    progman--------程序管理器
    regedit.exe----注册表
    rsop.msc-------组策略结果集
    regedt32-------注册表编辑器
    rononce -p ----15秒关机
    regsvr32 /u *.dll----停止dll文件运行
    regsvr32 /u zipfldr.dll------取消zip支持
    cmd.exe--------cmd命令提示符
    chkdsk.exe-----chkdsk磁盘检查
    certmgr.msc----证书管理实用程序
    calc-----------启动计算器
    charmap--------启动字符映射表
    cliconfg-------sql server 客户端网络实用程序
    clipbrd--------剪贴板查看器
    conf-----------启动netmeeting
    compmgmt.msc---计算机管理
    cleanmgr-------垃圾整理
    ciadv.msc------索引服务程序
    osk------------打开屏幕键盘
    odbcad32-------odbc数据源管理器
    oobe/msoobe /a----检查xp是否激活
    lusrmgr.msc----本机用户和组
    logoff---------注销命令
    iexpress-------木马捆绑工具,系统自带
    nslookup-------ip地址侦测器
    fsmgmt.msc-----共享文件夹管理器
    utilman--------辅助工具管理器
    gpedit.msc-----组策略

  • 巧妙利用typeof解决父窗口是否存在的判断.
    对于一般情况下判断父窗口是否关闭,采用的是如下方式:
    if(opener){
    if(opener.closed == false){
    //父窗口没有关闭
    }else{
    //父窗口已关闭
    }
    }else{
    //父窗口已关闭
    }
    但是对于上述的代码,若是在其他所有的IE窗口(包括父窗口)都关闭,只有弹出窗口没关闭时,
    提交弹出窗口,在执行弹出窗口中的上述判断父窗口的代码时,会弹出"没有权限"的js错误对话框.
    (有的IE会弹出,有的不会弹出,可能和本机设置有关,具体不太清楚.)
    避免此问题的方法:改用下面的方法来处理.
    if(opener){
    if(typeof(window.opener.document)==’unknown’||typeof(window.opener.document) == ’undefined’){
    //父窗口已关闭
    }else{
    //父窗口没有关闭
    }
    }else{
    //父窗口已关闭
    }

    ok,that’s all.

    ----------
    PS:测试组也真够厉害的,什么样儿的情况都能测得出来.

    补充:另一种利用try /catch来避免

    function isCloseOpener(){
    var isWindowClose = true;
    try {
    if(opener!=null && !opener.closed) {
    isWindowClose = false;
    } else {
    isWindowClose = true;
    }
    } catch(e){
    isWindowClose = true;
    }
    return isWindowClose;
    }
  • CMM欺骗了中国的软件业ZT
    BY沉思
    原出处:http://www.sysvs.com/weblog/inde-2.asp?articleId=234


    本人经历过CMM2、CMM3、CMMI4和5,随着对CMM的理解的深入,越发产生了深层次的思考。CMM对我个人影响也很大,的确有很多好的实践和理念供我们学习和借鉴。本文不是全面否定CMM,而是从批判的角度审视我们对CMM的认识。大家可以共同探讨。
    中国人实际是一个很特殊的人群,中国人的思维方式、价值观和处世方式与西方国家的区别很大,这与中国历史5000年漫长的封建文化有直接的关系。


    西方历史的发展是以科技为主线的,因此在西方的管理学中明显体现的是科学学科的态度和方法。在西方的管理学中分权和量化是两个重要的特点,而在中国的管理学中,为人处世却是主体,西方管理以事为主体,中国的管理以人为主体。

    国内现在通过了CMM/CMMI从二级到五级那么多的企业,有多少企业生存的比以前好?又有多少家企业从此就消失在这个行业中了?

    纵观国内软件行业的大局,究其原因有如下:

    1. 引入了模型却引入不了文化:

    任何一项管理制度和管理的方法模型都有其生长的根源和文化背景。比如独裁的管理、民主的管理等等。CMM起源于西方的软件行业,很多考虑问题的思路是有其背景的。比如分权治之的思想、量化管理的思想等。

    管理不仅仅是科学,尽管我个人认为过程管理更多是一门科学。但是管理离不开对人的管理,只要涉及到人在中国就不是一件单纯的事情了。

    另外国内的软件企业很少有成熟的企业文化的,这也是不论是CMM还是ISO9K都面临失败的原因之一。实施CMM更是一种文化的塑造和改革,是全体意识的提高和变革。自己本身都没有成熟的企业价值观和文化观,怎么可能让CMM在企业生根?不能在企业每个人的头脑中生根的CMM又怎么能发芽、开花、结果呢?国内企业通过CMM基本上都只是一个研发部或者产品部通过的。

    2. 软件,人的因素更重要:

    从软件技术开始,其质量和产出就是人的创造性和智力的结晶。尽管很多人鼓吹“软件蓝领”、“软件工厂”的概念,但是至少在二十年内,还看不到曙光。凡是可以用蓝领进行工厂化实现的技术具有如下的特点:

    机械性,可明确切割动作(如泰勒实验中描述的);

    可替代性,入门容易,任何一个人的工作是可替代的,或者替代的成本是比较低的;

    成本主要是材料,而不是人工;

    标准化,生成工艺和成品是可以标准化的。

    从上面可以看到,软件行业明显与此是不同的。软件从最开始的Coding、Debug阶段都引入工程的概念在生产效率上提高了很多。但是目前不论是组件开发和面向对象还是代码生成都没有显著改变软件开发的质量和效率。我不否认软件工程或者传统行业的很多实践是可以引入到软件行业中的,但是我反对把软件生产当作传统行业生产的。至少在目前是做不到的,也许到了未来的人比现在聪明数倍、软件的标准和工具发展到想现在的扳手和车床一样。这似乎是个奢望。

    大家知道,同一个学校出来的学软件的学生,其生产效率和开发质量相差几倍甚至十倍是非常正常的事情,即便是同一个人,在受到公司重视,心情好的时候比他即将离职,对公司不抱有希望的时候的生产效率差几倍也是再正常不过的事情了。

    软件行业的人比其他行业的材料、工具和技术工人更复杂,其工作的动机更复杂、其社会和心理需求层次更高、人的个性差异性比较大。因此对于软件企业的人力资源的管理就更富有挑战性和以人为本。而CMM是过程模型,因此除了培训过程几乎是不关心人的。

    3. CMM更适合大型项目

    这是不争的事实,因为当初CMM的起源就是美国国防部为了有效控制和管理其项目而委托SEI的研究成果。国防部的项目100人月的项目就算是小项目,大部分都是几百人月甚至上千人月的项目。这种情况下没有规范的过程是不可行的事情。回头看看中国国内的情况,100人月的项目绝对算是大项目了,超过500万合同额的软件项目很少,有些甲方为了将项目分给更多的关系企业,往往人为地分成不同的项目来分包给不同的开发商。这些小项目往往是3-6个月的工期,交付的压力很大,客户的不成熟又往往看眼前的进度,而不是日后的质量。这就导致了国内很多项目是摇摇晃晃上线,提心吊胆维护,最好软件改的差不多稳定了,钱也花的差不多了。看起来是花很少的钱开发完成了,但是花更多的钱来修补。其实如果前期就能够按部就班,按照客观规律来做事,Total Cost就会减少很多。

    4. 分权与量化的尴尬

    在中国的历史中,最高管理者往往利用制衡的手段来统治和管理国家的。但是大家注意的是制衡,而不是分权。5000年的历史形成的文化和价值取向,分权是不现实的。从台湾的民主分权政治中我们也会发现缘由,中国人的民主分权意味着低效和成为独裁的幌子。再看软件企业,实施CMM的单位大部分都是在部门级或者技术范围内,很难看到分权和监督的作用。

    关于量化也是一样,我相信大多数中国人不是太相信数字的。因为中国人的头脑中都有自己的标准,而很少有人优先想到别人或者另外的标准。台湾曾仕强老师讲过一个例子,就是一家德国的机床厂家发现卖到中国的机床很容易坏,经常更换配
  • 成功进行软件项目策划的九个基本要点

    作者: dylan_ren 发表日期: 2006-10-02 09:18 文章属性: 原创
    文章来源:http://dylan1971.blog.ccidnet.com/blog/ccid/do_showone/tid_94964.html


    作者:葛梅,任甲林 来源:信息技术与标准化 
      古人云“万事预则立,不预则废”,项目要成功必须做好计划。软件项目策划是项目管理过程中最基本的一个过程,软件项目策划的方法是软件项目经理必须掌握的。在实际的项目策划过程中,必须掌握以下的9个基本要点:

    (1)掌握好项目策划的时机

      软件项目策划过程的输出是文档化的项目计划书,在项目的不同阶段都需要进行项目策划,只不过在不同时机项目策划的目的不同,花费的工作量也不同。当有了概要的客户需求而没有形成详细的软件需求规格说明书(SRS)时,进行项目策划产生的是项目的概要计划或者是里程碑计划,当产生了详细的SRS 后,项目策划活动可以产生项目的详细计划,可以明确估计项目的规模、工作量、进度、资源等,作为项目管理的主要依据。当发生了需求变化或者项目计划与实际存在比较大的偏差时,可以对项目进行重计划。需要提醒注意的是在需求未确定的时候,进行软件的估计是比较粗略的,此时不需要在项目策划上花费太多的精力。

    (2)任务一定要明确

      在进行项目策划时,建立工作任务分解(WBS)是必须要做的工作,即把
      工作拆分成一个个独立的、明确的任务,所谓明确的任务是指:
      ● 该任务一定有一个输出结果;
      ● 输出的格式有明确的定义;
      ● 输出的内容有明确的检测手段与验收标准;
      ● 任务的时间是有具体要求的。
      上述4个判定标准有一个达不到就不能称为是一个明确的任务。在实践中,有一些任务难以定义的很明确,因为有些结果是难以预测的,比如说分析工作,具体的时间要求是难以准确预测的。任务如果不明确,就无从谈起任务是否做完了。

      在项目组中往往由于前一阶段的工作没做好,造成后续阶段的任务难以明确定义下来。设计没有做完,编码的工作就不能定义的很清楚,就往往会造成实际的编码工作难以在要求的时间内完工,形成项目风险。

    (3)识别的任务不要有遗漏

      在软件策划时,常犯的一个毛病是:任务没有识别全。在项目的实际执行过程,经常出现计划外的、又必须执行的项目组的任务,而不是项目组外的干扰活动。为了识别的任务比较完备,可以建立任务识别指南以提醒项目经理。经常遗漏的任务包括:
      ● 项目管理类的任务,如项目计划、计划的变更、计划评审等;
      ● 横向关联类的任务,如集成任务、需求跟踪矩阵的制定与更新等;
      ● 项目交付物的制作任务,如用户手册的编写、培训教材的编写等;

    (4)任务的颗粒度要适中

      在划分任务时,任务的颗粒度不能太大,也不能太小。颗粒度太大,就难以及时发现问题;颗粒度太小,就会增加管理成本。任务的颗粒度最小可以到半天,最大到周,一般以小于3天为宜,也就是说,项目经理能够在1周中至少检查2次成员的工作进展情况。适当的任务颗粒度一方面便于监控,另一方面也有利于调整任务。当出现任务拖期时,可以比较灵活地重新安排人员接手其他人员的任务。

    (5)估计要尽可能的合理

      为了保证估计的合理性,可以采用下面的措施:
      ● 借助历史数据。历史数据是“经验”的量化,通过和历史项目的数据对比,
      ● 可以降低估计的风险。需要注意的是,在借鉴历史数据的时候,要注意数据的可比性,要考察项目类型是否类似、生命周期模型是否类似等。
      ● 采用多种估计方法互相验证。在估计时可以采用多种估计方法,然后对多种方法的结果进行对比,通过分析其差异以判断合理性。
      ● 细分任务。任务拆分的越详细,就越容易估计,越容易和历史数据对比。
      ● 任务要完备。在估计的时候,要识别出所有的工作内容,不要有遗漏。
      ● 有估计经验的人参与估计。一方面要对参与估计的人员进行培训,另一方面需要在实践中积累估计经验,每次估计完成后,都要和实际的情况进行对比,经过3~5次的反复,则可以积累估计的经验,提高估计的准确性。

    (6)识别清楚任务之间的依赖关系
      任务和任务之间存在下面的5种依赖关系:
      ● 输入输出关系。即A任务的输出是B任务的输入,A任务完成后,B任务才可以开始。比如编码和测试之间的关系。
      ● 资源依赖关系。即A任务和B任务使用同一个资源,当资源为A使用时,就不能为B使用,当资源为B使用时,就不能为A使用。例如一个程序员不能同时做2个模块的开发,必须做完一个模块再做另一个模块。
      ● 需求之间的接口关系。即A任务和B任务的输出存在接口,2个部分的输出需要组装在一起,如果组装的任务是C,则A,B任务未完成,C任务也无法开始。
      ● 调用关系。主要是对编码任务而言,任务A的代码为任务B的代码所调用,则A必须先完成。
      ● 采购关系。如果存在需要采购的外部构件的话,则采购行为必须先完成。
      定义了任务之间的依赖关系,就可以识别出项目的关键路径,以重点关注关键路径。

    (7
  • CFM中一些§标记 和相关的§描述


    ColdFusion标记时发给ClodFusion Server的一种指令,要求它执行数据库查询、处理结果、生成输出、控制程序流程、处理错误、收发电子邮件等等。
    以下是CFML标记按字母顺序的一个完整列表,并带有详细简单的描述。

    §标记 §描述
    【A】
    <CFABORT> 立即停止对一个ClodFusion模板的处理
    <CFAPPLET> 以<CFFORM>格式嵌入用户提供的JAVA小程序
    <CFAPPLICATION> 定义一个应用程序的作用域,并指定一些应用程序配置
    <CFASSOCIATE> 将子标记(subtags或child tags)与基础标记关联
    <CFAUTHENTICATE> 在安全语境中验证用户,为应用程序定义一个安全的语境
    【B】
    <CFBREAK> 打断循环进程,与<CFABORT>不同,不阻止ClodFusion处理
    【C】
    <CFCACHE> 改进页面的执行,在页面中,每次页面中,每次页面要求时都不需要动态创建内容,相反,ClodFusion会返回在先前的过程中创建的静态HTML输出
    <CFCASE> 在<CFSWITCH>块内指定case语句
    <CFCHTCH> 在<CFTRY>块中创建捕捉块来捕捉错误
    <CFCOL> 在<CFTABLE>HTML表中指定列
    <CFCOLLECTION> 程序化地创建和管理Verity集合
    <CFCONTENT> 设置MIN类型,以便能将非HTML格式的文档发送至客户浏览器
    <CFCOOKIE> 在客户浏览器上设置cookie和持久的客户端变量
    【D】
    <CFDEFAULTCASE> 在<CFSWITCH>块内制定默认的case语句
    <CFDIRECTORY> 获取目录列表并处理目录
    <CFDUMP> 输出简单变量、查询、结构、数组和用来调试的序列化WDDX包的内容
    【E】
    <CFELSE> <CFIF>语句的else部分
    <CFELSEIF> <CFIF>语句的else if部分
    <CFERROR> 覆盖标准的ClodFusion错误消息,并用指定的特殊错误处理模板来替换它
    <CFEXECUTE> 在ClodFusion服务器机器上执行处理
    <CFEXIT> 终止自定义标记的处理,而不终止调用模板的处理
    【F】
    <CFFILE> 执行文件管理操作,包含在浏览器中上载文件;移动、重命名、复制和删除文件;以及读写文件
    <CFFLUSH> 清空ClodFusion的输出缓冲,将内容发送回Web浏览器
    <CFFORM> 能够使用其他标记(<CFGRID>、<CFINPUT>、<CFSELECT>、<CFTEXTINPUT>、<CFSLIDER>、<CFTREE>或使用<CFAPPLET>的任何Java applet)
    <CFFTP> FTP界面――internet标准文件传输协议
    【G】
    <CFGRAPH> 动态创建基于Web的数据驱动图表
    <CFGRAPHDATA> 提供<CFGRAPH>的数据点
    <CFGRID> 创建Java applet数据表格
    <CFGRIDCOLUMN> 明确指定<CFGRID>列
    <CFGRIDROW> 指定<CFGRID>数据行
    <CFGRIDUPDATE> 编辑模式下的<CFGRID>后端支持
    【H】
    <CFHEADER> 控制特定HTTP标题的内容
    <CFHTMLHEAD> 在Web页中的标题部分编写文字
    <CFHTTP> HTTP界面――Internet标准超文本传输协议
    <CFHTTPPARAM> 将参数传递给<CFHTTP>请求
    【I】
    <CFIF> 执行条件处理
    <CFIMPERSONATE> 扮演在安全场景中的另一个用户
    <CFINCLUDE> 包含处理过的另一个模板中的内容
    <CFINDEX> 用索引数据填充Verity集合
    <CFINPUT> 以HTML的格式嵌入JavaScript客户端验证代码
    <CFINSERT> 在数据库表中添加单行
    【L】
    <CFLDAP> 与LDAP服务器交互
    <CFLOCATION> 将浏览器重新定向到其他的URL上
    <CFLOCK> 将互斥或只读锁定放置在一段代码周围
    <CFLOG> 生成用户自定义的日志文件
    CFLOOP> 实现程序化的循环
    【M】
    <CFMAIL> 从ColdFusion模板内生成SMTP邮件
    <CFMAILPARAM> 指定<CFMAIL>标题或提供文件附件
    <CFMODULE> 明确执行自定义标记,声明其详尽或相对的路径
    【O】
    <CFOBJECT> 在ColdFusion应用程序内使用COM。Java和CORBA对象
    <CFOUTPUT> 输出<CFQUERY>的结果和随时的文本,包括将要扩展的变量
    【P】
    <CFPARAM> 指定参数的默认值和所需的标记参数
    <CFPOP> 在POP3邮箱中获取和处理邮件
    <CFPROCESSINGDIRECTIVE> 在起始和结束标记之间压缩空白
    <CFPROCPARAM> 将参数传递到调用的<CFSTOREDPROC>存储过程中,并从该过程中获取参数
    <CFPROCRESULT> 指定结果设置来获取调用的,CFSTOREDPROC>存储过程
    【Q】
    <CFQUERY> 将SQL语句提交给数据源或其他查询,该数据源或者是先前配置好的,或者是动态生成的
    <CFQUERYPARAM> 定义<CFQUERY>查询参数和它们的数据类型
    【R】
    <CFREGISTRY> 直接处理系统Registry
    <CFREPORT> 用Crystal Reports Prefessional报表生成程序创建的报告界面
    <CFRETHROW> 在<CFCATCH>块内迫使当前错误再次被调用
    【S】
    <CFSAVECONTENT> 在变量中保存页面的输出或页面的部分
    <CFSCHEDULE> 程序化地创建、更新、删除和执行ClodFusion Administrator调度程序中的任务
    <CFSCRIPT> 标记ColdFusion脚本块
    <CFSEARCH> 执行对Verity集合的搜索(与<CFQUERY>对ODBC数据源执行搜索的方法大致相同)
    <CFSELECT> 简化创建数据驱动<SELECT>表单控件的过程
    <CFSERVLET> 执行在JRun服务器上运行的Java Servlet
    <CFSERVLETPARAM> 通过值或引用将参数传递到在JRun服务器上运行的Java Servlet所调用的<CFSERVLET>
    <CFSET> 为变量分配一个值
    <CFSETTING
  • 2006-06-23

    CF问题解答 - [计算机]

    CF问题解答
    1: 我需要些那些东西来开始使用ColdFusion?
      主要是两样东西:
      1)一个ColdFusion服务器来运行你的应用程序,你可以使用一家支持ColdFusion的空间提供商,或在你本地机器上安装你自己的ColdFusion服务器(开发版的ColdFusion是免费的)。
      2)你还需要一个代码编写环境,Dreamweaver MX 可能是你最好的选择,当然你也可以使用其它任何文本编辑软件。
    6: 标准版和企业版的ColdFusion之间有什么主要的区别?
      企业版能运行在更多不同的系统平台上,同时也支持更多种类的数据库,企业版中带了一个JRun,支持同时运行几个ColdFusion实例,企业版还提供了高效率的邮件处理能力等等一些特点。如果您需要一个可用性高且稳定快速的站点,您就该考虑用企业版的ColdFusion。访问下面的地址来获得不同版本之间的性能特点的对比信息。
    1: 如何才能在ColdFusion中调用由其它语言编写的程序资源?
      有几种方法:如果想调用能在系统命令行中执行的代码/程序(如在DOS下的tracert,ping),可以用 <CFEXECUTE> 。如果想调用由其它脚本程序(ASP,PHP,JSP )生产的web页面的话,可以用<CFHTTP>。如果想调用Web Service的话可以用<CFINVOKE>(这也是最值得推荐的方法)。不管是那种方法,都能帮您返回所需的结果。


    2: ColdFusion能处理XML吗?
      ColdFusion可以读,解析和生成XML数据。CFML甚至还提供了一些函数,帮你处理XSL转型和进行XPath搜索等。


    3: ColdFusion能调用Web Services吗?
      在这方面,ColdFusion是非常成熟且易于使用的。只需要在<CFINVOKE>里提供你所要调用的Web Server的WSDL的URL。ColdFusion会自动的进行相关的SOAP和XML的处理。


    4: 能用ColdFusion开发Web Services吗?
      用ColdFusion开发Web Services非常的简单。只需要在ColdFusion组件(.CFC文件)中把需要作为Web Services的methods的ACCESS类型定义为remote就可以了(ACCESS="remote")。不过一定要注意小心定义返回数据的类型,也别把一些特殊的字符(包括下划线)用在methods,argument或文件名中。


    5: 用那种方法来集成Flash和ColdFusion比较好呢?
      有好几种方法可以用来集成Flash和ColdFusion,(如通过XML和直接的HTTP访问)。但最好的方法是采用Flash Remoting。通过Flash Remoting,可以让Flash端的ActionScript就像是访问Flash自己的对象一样来访问由ColdFusion CFM/CFC所提供的对象。
    11: 我需要发送大量的邮件,如何才能提高ColdFusion的处理速度?
      需要发送大量的邮件的话,您就该用企业版的ColdFusion MX。企业版能够给邮件发送分配多个线程,而且能保持住SMTP的连接,通过这两个特点,企业版能提供更快的邮件处理速度。

    12: ColdFusion的自定义标签(CustomTags)的目录是共享的,如何才能让不同的用户都拥有他们自己的自定义标签(CustomTags)的目录?
      ColdFusion自定义标签(CustomTags)的缺省目录的确是共享的,但自定义标签并不一定要放在这个缺省目录里,用户可以把它们放在任何目录内(甚至一个非WEB目录内)。用户可以在他们自己的目录内创建自定义标签(CustomTags)的目录,并用<CFMODULE>来访问存放在里面的自定义标签(CustomTags)。

    13: 如何强制ColdFusion重新编译.CFM文件?
      最简单的方法是,把编译好的.classs文件手工删掉。它们缺省的存放目录是Web root目录下的WEB-INF\cfclasses目录。、

    14: 忘了ColdFusion管理员的密码,怎样才能访问ColdFusion的管理界面呢?
      没有办法找回密码,但你可以禁止这个密码,然后登陆到ColdFusion的管理界面内重新设一个密码。方法如下:打开neo-security.xml这个配置文件(在ColdFusion安装目录内的lib目录里),找到这一段:<var name=’admin.security.enabled’><boolean value=’true’/></var>。 把true改为false,保存后重起ColdFusion。接着你就能不用密码登陆到ColdFusion的管理界面里,修改密码后在打开neo-security.xml,把false改回true,别忘了保存后再重起ColdFusion。

     常见问题之CF的语言 - CFML
    作者:Ben Forta 时间: 2003-09-17 文档类型:转载 来自:cffaq.com
    1: 到底什么时候该用#符号把变量和表达式围起来?
      在CFML中,#是用来把ColdFusion变量或表达式从字符串中区分开的符号。可以把<CFOUTPUT> 和 </CFOUTPUT>当中的内容当成一个字符串,其中的变量或表达式必须用#围起来,ColdFusion在处理是就会对其做相应的处理。但是,在标签里,所有的数据都被当作变量或表达式而不是字符串,因此不需要#(如:<CFSET x=y+1>)。所以只有在ColdFusion把数据当成字符串时才要用#把变量或表达式区分开。

    2: 在HTML中用#表示颜色时(如<CFOUTPUT><hr color="#FF0000">...</CFOUTPUT>),ColdFusion会出错,如何解决?
      #在ColdFusion有其特殊的意义,是用来把变量和表达式从字符串中区分开的。而且必须配对使用,(如<CFOUTPUT>#now()#</CFOUTPUT>)如果ColdFusion发现只有一个#的话就报错,解决的方法时用两个#
  • 前一段由于项目的需要,学了一种新语言--CFML.虽然以前连听也没怎么听说过,
    但是这是一门标签语言,用法和HTML类似,所以对于PG来说,一点也不难.

    把一些不错的资料给有需要人共享一下!不过真正开发时,给自己帮助最大的还是CFDOC了.
    主要是应用函数和标签!
    不过我共享的这些资料对一开始刚入门学习这门语言还是很有帮助的.
    相关资料整理后共享!
    ---------------------------------
    几个不错的网址:

    http://www.macromedia.com/examples/cfgettingstarted/
    experience/docs/steps_for_building_dynamic_pages_en.pdf (官方网站帮助)

    http://www.mmug.cn/forum/index.cfm?sPart=G&sForumId=010&iItemId=65
    (COLDFUSION MX 7 认证考试中文学习指南)

    http://www.forta.com (Ben的网站,Ben 是 Macromedia 的官方
    ColdFusion 培训材料、认证考试和针对这些考试的 Macromedia Press* 学习指南的作者之一,
    目前他在世界范围内举办讲座、进行演讲和编写应用程序.Ben 的 blog 在 forta.com/blog*,
    您可以在那里读到他定期发表的有关 ColdFusion 及其它主题的帖子。)


    http://www.cfsky.com/ 也是一个很不错的CF网站

    http://www.adobe.com/devnet/coldfusion/articles/globalize_05.html
    (官方关于COLDFUSION 全球化应用的介绍)

    http://www.pconline.com.cn/pcedu/sj/wz/other/10207/72489.html
    Macromedia ColdFusionMX 开发者(目录)

    http://www.cflib.org 自定义函数库

    -------------------------------------------
    ColdFusion MX 7 介绍
    Ben Forta
    www.forta.com*

    我们发布 Macromedia ColdFusion MX(历史上最引人注目的和最具雄心的 ColdFusion 更新)已经三年了。ColdFusion MX 是 ColdFusion 历史中重要的里程碑。对于开发团队来说,那是一次可以推倒重建 ColdFusion 的机会,我们可以对所有我们所学到的关于 Web 应用程序及其构建方式的知识加以考虑。

    ColdFusion MX 首先是一个架构性的发行版本。它具有以下特点:

    全新的基于 Java 的引擎
    真正的编译器
    基于行业标准的 J2EE 服务器部署
    更好地支持 XML、SOAP 及其它标准
    连接 Java 世界
    当然,ColdFusion MX(和 ColdFusion MX 6.1)也具有重要的新功能、语言增强、经过改进的性能,以及更好的可升级性和可靠性。但 ColdFusion MX 的核心是关于架构的,是为了利用新功能而对 ColdFusion 内部工作方式的重要投资。

    ColdFusion MX 是非常成功的产品,大部分 ColdFusion 用户已从其功能中获益。随着 ColdFusion 的新引擎不断证明其潜质和开发人员忙于发现其中蕴含的新机会,ColdFusion 团队终于能够花时间来构建新的功能了,而这在过去是不可能的。

    在超过一年的时间里,我们对几千名 ColdFusion 开发人员进行了访谈。我们将创意和预览发布到世界各地的几百个用户组中,与无数的合作伙伴和客户进行头脑风暴,在堆积成山的愿望列表反馈中跋涉,并与大量(当前和潜在的)用户交流。尘埃落定后,一系列目标浮出水面:

    使新用户更为成功。 ColdFusion 总是对新开发人员具有吸引力。没有其它语言或产品像 ColdFusion 一样适合他们的需要。新用户(主要是那些具有构建网页面和静态站点背景的用户)是 ColdFusion 用户集合的重要部分,ColdFusion 必须继续致力于使成功的开发对于这些用户更加简单。这涉及了创建 Dreamweaver 扩展和配置屏幕,提供更好的新鲜出炉的教学和更为可用的价值,以及更多。
    为现有用户提供即时可用的功能特性。开发人员从不隐瞒自己想要的功能。我们需要提供他们要求的功能和特性。
    帮助开发人员(我们的用户)取悦于他们的用户。ColdFusion 应用程序的消费者具有共同的需求—他们喜欢在为他们创建的应用程序中看到的东西。很多这些需求是关于应用程序如何捕捉和显示数据。ColdFusion 必须提供新的、强大的表单、报表和打印功能。
    改进可靠性和部署选项。ColdFusion 的 Java 内核使各种强大和重要的部署和可靠性选项成为可能。现在,ColdFusion 需要使这些对您和您的应用程序而言比以往更为可用。
    创新、创新、创新。ColdFusion 在 Web 快速开发方面一直领先。事实上,现在仍没有构建基于 Web 的应用程序的更快速方法。ColdFusion 的开发经验需要被应用到新的平台和技术上,从而使它们同样地使用就绪。
    这些都是重要的,甚至是崇高的目标。我们投入了几万个开发小时,启动了迄今为止最大的 beta 测试项目,并保持与客户定期接触以便他们帮助我们集中力量并沿着正确的方向前进。

    结果就是历史上最具客户导向的 ColdFusion 版本,一个为构建实际应用程序的实际开发人员解决了实际问题的功能丰富的发行版本,一个达到和超过所列目标的产品。

    因此,我想借此机会向您正式介绍 ColdFusion MX 7。

    经过改进的表单字段验证
    数据条目表单长久以来一直是基于 Web 的应用程序的阿喀琉斯之踵。无需批评 HTML 表单(事实上,您一定有亲身体验),ColdFusion MX 7 以几种方式改进了表单,首先是经过改进的表单字段验证。

    首先,ColdFusion 包含了额
  • 前两天,想抠张照片,本来对PS就不是太熟练,
    再加上,人的头发太多,太细,难度更大,让几个很专业的朋友帮忙处理了下,处理的效果都不是特别理想!

    自己在想,想抠张复杂一点的图就这么难呀?
    于是就在网上search处理工具和技巧,


    终于功夫不负有心人.让我找到了.

    虽然也没有处理的特别理想的状况,但也基本可以了!

    [face02]

    大家若有这方面的需要不妨了解一下这个东东

    专业的抠图工具KnockOut 2软件下载 介绍及安装教程


    下载软件地址:

    http://www.imageedu.com/download/knockout20.rar (本人以验证可下载使用)

    介绍软件:

    KnockOut 2连极细的毛发都能从复杂的背景中分离出来。 Knockout 是一套专门用来「去背」的创意软件( 专业一点的术语是制作「遮罩」),所谓的去背,指的是将特定的主体从背景中抽离出来, 以便进行其它的后续设计。例如,将人物从风景照之中抽离出来,以便更换背景。 目前,坊间的影像处理软件,例如 PhotoImpact、PhotoShop ...等,其实也都可以进行去背的作业,但却不及 Knockout 来得功能强大及便利。 在 Knockout 之中,若背景较为单纯时,我们只要定义 "内部“ 及”外部“ 两个选取区域,再按一下处理(或 ctrl+P钮),通常便能完成去背的作业。 其去背的准确、快速及方便、容易程度,可谓其它软件都难以望其项背。

    软件安装:

    把KnockOut 2安装在C:\Program Files\Adode\Photoshop \Plug-Ins路径下(这是你原来安装PS时就有的路经,如果你的PS不是安装在C:盘,那就要找到你当时所安装PS的路经。)用户名:随便写,序列号:KO20CRD-0019351-RKU。

    汉化需要安装在C:\Program Files\Adode\Photoshop \Plug-Ins\Effects路径下 安装KnockOut 2_P2.exe即可

  • 想学ajax的朋友,不妨进去看看.

    http://myajax.bokee.com ajax天空
    http://myajax.bokee.com
    里面有许多不错的技术文章和电子书!
  • <script>
    function GetFileSize()
    {
    alert(’aa’);
    var filename=document.all.File.value;
    alert(filename);
    if(filename==’’)
    {
    return false;
    }
    try
    {

    var fso,f;
    fso=new ActiveXObject("Scripting.FileSystemObject");
    f=fso.GetFile(filename);
    alert(f.size+" Bytes");

    }
    catch(e)
    {
    window.confirm(e);
    return false;
    }
    return true;
    }
    </script>
    <input type=file id="File"><input type=button onclick="javascript:GetFileSize()">
  • 前两天,闲着没事儿,并且加班比较多,且身体感觉有许多不适,
    估计可能的原因是工作时间过长,缺少休息造成的,于是有了要做一个休息提醒器的想法。

    本来,想用JAVA做的,后来了解到还要用JNI来调用WINDOWS API ,
    后来一想,还是先用vc做一个速度快些!再说从毕业以来,也有很长时间没用VC了,
    这也算是对它的一个温习吧!

    有经常像我一样坐在电脑旁工作的朋友,不妨down来用用!
    工作要紧,身体也重要!
    下载地址在评论中.

    截图:

  • windows内部有许多命令都很好用,由于种种原因平时都不怎么在意,
    当你遇到问题时就会想:是不是有这样一个命令或应该有这样一个命令了.
    比如上次偶尔想为自己的某个目录生成一个文件或文件夹列表就让tree命令给帮了个忙
    使用很简单.
    简单介绍此命令如下:



    运行一下即知.
  • sourceforge http://www.sourceforge.net

    java.net http://www.java.net

    www.eclipse.org

    www.opensource.org


    (4)Java语言中Timer类的简洁用法:http://dev.csdn.net/Develop/article/33/article/33/a

    rticle/33/33327.shtm;
    (5)几个常用JAVA开源项目的地址荟萃:
    Lomboz http://www.objectlearn.com/index.jsp (J2EE plugin for Eclipse)
    htmlArea http://sourceforge.net/projects/itools-htmlarea/ (所见即所得的在线HTML

    编辑器)
    XmlBuddy http://www.xmlbuddy.com/ (XML Editor plugin for Eclipse)
    JFreeChart http://www.jfree.org/ (用于生成图表的项目)
    EclipseME http://eclipseme.sourceforge.net/ (J2ME Developmnt Plugin for Eclipse)
    mvnForum http://sourceforge.net/projects/mvnforum/ (论坛)
    jChatBox http://www.javazoom.net/index.shtml (用servlet实现的WEB聊天引擎)
    POI http://jakarta.apache.org/poi/index.html (用于处理Excel,WORD等文档

    的项目)
    FileUpload http://jakarta.apache.org/commons/fileupload/ (用于处理HTTP文件上传得项

    目)
    PDFBox http://sourceforge.net/projects/pdfbox/ (处理PDF文档的项目)
    Lucene http://jakarta.apache.org/lucene/index.html (搜索引擎)
    Digester http://jakarta.apache.org/commons/digester/ (处理XML信息的项目)
    DBCP http://jakarta.apache.org/commons/dbcp/ (数据库连接池)
    AXIS http://ws.apache.org/axis/ (WebService 的实现框架)
    Jetspeed http://portals.apache.org/jetspeed-1/ (Portal)
    HSQLDB http://sourceforge.net/projects/hsqldb/ (Im memory Database Engine)
    CEWOLF http://sourceforge.net/projects/cewolf/

    (一套标签库实现Web报表,使用的是jFreeChart引擎)
    Struts Menu http://sourceforge.net/projects/struts-menu/ (基于Struts的Web菜单项目

    )
    htmlparser http://sourceforge.net/projects/htmlparser/ (用于解析HTML信息的项目

    )
    Mondrian http://sourceforge.net/projects/mondrian/ (Open Source OLAP

    Database)
    ProGuard http://sourceforge.net/projects/proguard/ (Java的混淆器)
    InfoGlue http://sourceforge.net/projects/infoglue/ (J2EE 内容管理系统)
    JPivot http://sourceforge.net/projects/jpivot/ (基于WEB的OLAP 展现)
    HttpClient http://jakarta.apache.org/commons/httpclient/ 处理http客户端的接口

  • 直接让客户端浏览器下载已知类型的文件


    Web开发人员都有过这样的疑问,如何让一个文件,尤其是一个已知类型的文件,发送到客户端,直接提示让浏览者下载,而不是用与它相关联的程序打开。以前我们最常用的办法就是把这样的文件加到链接上,这样可以让浏览者通过点击鼠标右键的目标另存为来下载所链接的文件。但是,这样有两个不足的地方:
    一是:如果浏览器能够识别已下载文件的扩展名,则浏览器就会激活该扩展名所关联的程序来打开所下载的文件。比如:在Windows平台上,如果用户点击的链接链接的是一个“.doc”文件的话,那么,浏览器就会启动Microsoft Word应用程序来打开它。
    二是:如果采用链接的办法的话,任何能看到该链接的人都可以下载该文件,你虽然也可以对所下载的文件进行权限设置,但那样做也不是很方便的。有时候我们需要更为灵活和富有弹性的方式,下面的程序能够很方便地克服以上两方面的不足。
    这种办法是可靠的,但你必须记住:没有授权的用户不能够通过在浏览器地址栏里输入文件的URL来取得该文件的下载权。所以,要下载的文件应该放到虚拟目录之外的一个目录里,比如:如果你的虚拟目录是C:\Mengxianhui\Tomcat4\Website\MyApp的话,那么,存放在该目录和该目录下的任何子目录下所有文件对因特网上的任何用户都是可见的。要直接下载一个文件,我们需要做两件事,第一件事是:设定响应的内容类为“application/octet-stream”,大小写无关。第二件事是:设置HTTP的响应头名字为:Content-Disposition,设定值为:attachment; filename = theFileName。这里的theFileName就是出现在文件下载对话框里的默认文件名,通常和所下载的文件名字相同,但也可以不同。下面,我们就平常最常用的JSP和ASP页面来举一个实际应用的例子。

    TestFileDownload.JSP页面的例子:

    <%
    // 得到文件名字和路径
    String filename = "MengxianhuiDocTest.doc";
    String filepath = "D:\\";

    // 设置响应头和下载保存的文件名
    response.setContentType("APPLICATION/OCTET-STREAM");
    response.setHeader("Content-Disposition",
    "attachment; filename=\"" + filename + "\"");

    // 打开指定文件的流信息
    java.io.FileInputStream fileInputStream =
    new java.io.FileInputStream(filepath + filename);

    // 写出流信息
    int i;
    while ((i=fileInputStream.read()) != -1) {
    out.write(i);
    }
    fileInputStream.close();
    out.close();
    %>

    值得注意的是:在你要下载的文件内容里,除了文件的内容之外,不应该再附加有其它任何的字符,包括空格和回车换行符。我们有时在编写代码的时候,为了使代码清晰可读,往往会添加一些空格、制表符或者回车换行符,这样虽然看起来比较清晰,但有时可能会得不到正确的结果。比如:
    <%@ page import="java.io.*"
    %> <jsp:useBean id="MyBeanFromMengxianhui" scope="page"
    class="com.Mengxianhui.DownloadBean" />
    应该写成这样:
    <%@ page import="java.io.*"
    %><jsp:useBean id="MyBeanFromMengxianhui" scope="page"
    class="com.Mengxianhui.DownloadBean" />

    TestFileDownload.ASP页面的例子:

    在ASP里,没有提供从文件读取文件流信息的方法,因此,为了得到文件的流信息,我们必须借助其他的工具,最简单的就是编写一个VB或C的DLL组件,让组件返回文件的流信息。下面是一个用VB编写的DLL的例子,工程名字为MengXHFileDownLoad,类模块的名字为BinReadFromFile,类方法readBinFromFile如下:

    Function readBinFromFile(ByVal bfilename As String) As Variant
    Dim fl As Long
    Dim FileNum As Long
    Dim binbyte() As Byte
    Dim binfilestr As String

    On Error GoTo errHandler
    FileNum = FreeFile
    Open bfilename For Binary As #FileNum
    fl = FileLen(bfilename)
    ReDim binbyte(fl)
    Get #FileNum, , binbyte
    Close #FileNum
    readBinFromFile = binbyte
    Exit Function

    errHandler:
    Exit Function
    End Function

    把上面的代码编译成MengXHFileDownLoad.DLL,然后注册即可使用。下面以直接下载一个When A Man Loves A Woman.mp3的MP3文件为例子,我们要编写的ASP脚本代码如下:

    <%@ Language=VBScript %>
    <%
    Response.buffer = TRUE
    Response.ContentType = "APPLICATION/OCTET-STREAM"
    Response.AddHeader "Content-Disposition","attachment;filename=When A Man Loves A Woman.mp3"

    Dim varStream, oMyObject

    Set oMyObject = Server.CreateObject("MengXHFileDownLoad.BinReadFromFile")
    varStream = oMyObject.readBinFromFile("E:\MengXianhui\Mp3\When A Man Loves A Woman.mp3")
    Response.BinaryWrite(varStream)
    Set oMyObject = Nothing

    Response.End
    %>

    当我们运行
  • 职业观察:30岁 软件人才一道坎?
    (2003.04.30) 来自:中关村周刊 高娃
     30岁,我该怎么办

      雷先生是一家开发网络软件的公司的程序员,在这家公司任职已有3年之久。因为能力出色,他颇得老总重视,也是公司的核心开发人员。但就在他30岁之际,老总决定不再同他续签工作合同。公司开发软件的平台已经从PB(power build)转向了.net,而雷先生是一位PB高手,对.net的知识却不甚了解。眼见他再无利用价值,被辞退也在意料之中。

      在中关村,像他这样的编程人员不在少数,他们或多或少都面临着这样的难题——30岁,我该如何选择?

      他的同事这样形容他的离开:默默地收拾东西,尽量不惊动任何人,慢慢地走出去,走出让他流了3年汗水的公司。

      无独有偶。一年前,刚刚年满30岁的孔先生也面临了这个问题。公司是做项目的,每个项目做完,代码重用的机率很低,而每个项目几乎都是在赶工作,没黑没白地干,因此,当年龄偏大的孔先生忙完手边的项目时,老总把他叫了去,请他离开公司。孔先生回头看了看开发部,那里新来了一批年轻的新手,他们朝气蓬勃、跃跃欲试。在领了3个月补偿工资之后,孔先生只能黯然离开。

      孔先生在3个月后找到了一份新工作,继续做程序员,而雷先生则不知去向。雷先生前不久才贷款买了房,准备长留中关村。

      尽早寻出路

      在中小型软件企业打工,尤其是在创业型企业打工,企业不愿意也没有能力养一些没有价值的员工。当程序员的价值被“挖空”时,企业便会无情地抛弃他。周先生1999年毕业于某名牌大学自动化系,刚好赶上网络热潮,他硬是自学了网络知识,进了一家在纳斯达克上市的网络公司做程序员。网络热潮中的年轻人热情也高,周先生干得拼命,天天加班,抓紧时间赶项目。“我几乎天天都是晚上10点钟以后下班,第二天一早就又按时来上班。”他说。

      但好景不长,因为网络公司人员变动频繁,公司内高层领导走马灯似地更换,手下的“兵”也是换了一拨又一拨。因为周先生是技术骨干,尚能保住不被裁员,但在这种环境下,周先生感觉到了无形的压力。公司领导换到第五拨时,周先生感觉再呆下去只能是陪葬品,于是选择了离开。

      周先生接着到一家开发ERP软件的公司从事开发工作。因为是针对网络的软件,所用的技术更新速度相当快,差不多一年一换。ASP、PHP、J2EE、.net……这些平台相互之间的关联又不是很紧密。几经折腾,公司业绩没见好转,周先生的加班可没少过。软件公司加班都是“义务”,公司充其量会提供一份盒饭。周先生感觉,再这样熬下去不是办法。“不知道哪天我累了,赶不上新技术的发展,做技术的就怕这个,那时候,我就玩完了。”

      这一年,周先生25岁,公司倒闭,周先生成了“无业游民”。赶上网络业冷淡,周先生的技术经验又都是基于网络软件,因此再找一份像样的程序员工作并不容易,周先生也害怕了做程序员时玩命般的生活方式。“除了写软件,没有时间看书、读报,甚至没有兴趣进行正常的生活用品采购,更重要的是没有机会认识女孩子。”周先生不好意思地笑笑,“我决定放弃再找程序员工作,开始闭关思考。”

      接下来,周先生花了半年多的时间反省自己,总之,网络开发的工作是不能再做了,程序员的活儿也苦,现在年轻还顶得住,等到顶不住的时候,想转行也难有机会了。于是,他花了3个月时间啃与网络相关的网管专业。因为网管所涉及的知识更新相对来说慢一些,加班工作也少,比较稳定。3个月后,周先生考取了思科公司的CCNA认证。然后凭着这张证书,他如愿以偿地找到了一个网管职位。虽然收入比起程序员要少一些,但至少比较稳定,也不用离开他喜欢的网络。

      现在,周先生一般选择业余时间编一些软件。“纯粹是个人爱好,我是不愿意再当程序员了。”

      创业的黄金时代

      张先生今年30岁,刚好处于程序员的“坎”上。在这之前,物理专业出身的他已经做了5年程序员,换过3家公司。

      “程序员工作,只要喜欢,就不会觉得苦吧。”张先生说,“我没有别的爱好,就喜欢编程,所以并不觉得这个工作枯燥,如果不让我编程,我反而浑身不自在。”

      但张先生也感受到了程序员工作的辛苦。“平时工作,我都会忘了时间,经常一干就不知道到几点了,我现在的公司管理也比较开放,只要项目能完成就行。我经常是一抬头才发现天亮了。”张先生有些担忧地说,“我害怕了,这样下去,我会垮掉。于是就抽时间写了个小程序,每天晚上8点会定时响铃提醒我,这样我就知道该下班休息了。”

      对于自己的将来,张先生早有打算,“我马上就要辞职了,在这个‘五一’之前。”

      张先生表示他准备继续编程。“我打算写共享软件,现在我已经有很多想法,可以自己实现它,然后挂在网上出卖。”

      张先生已经和几位志同道和的哥们开办了一家工作室,利用业余时间编写一些小软件免费提供给用户使用。“我们对其中一款实行收费,效果还不错,没想到国内有这么多愿意为正版软件付钱的用户。”张先生欣喜地说。在他的计划中,如果效果好,编写出来的软件挣到了钱,就可以再投资成立公
  • HTML标签详解



    [ 作者:三林在线收集 转贴自:三林在线收集 点击数:49 更新时间:2004-9-30 文章录入:wencheng ]


    减小字体 增大字体

    -- HTML标签详解
    HTML指令详解
    结构
    <html>
    <head>
    <title>标题<title>
    </head>
    <body>..........文件内容..........
    </body>
    </html>
    1.文件标题
    <title>..........</title>
    2.文件更新--<meta>
     【1】10秒后自动更新一次
      <meta http-equiv="refresh" content=10>
     【2】10秒後自动连结到另一文件
      <meta http-equiv="refresh" content="10;URL=欲连结文件之URL">
    3.查询用表单--<isindex>
       若欲设定查询栏位前的提示文字:
      <isindex prompt="提示文字">
    4.预设的基准路径--<base>
    <base href="放置文件的主机之URL">
    版面
    1.标题文字 <h#>..........</h#> #=1~6;h1为最大字,h6为最小字
    2.字体变化 <font>..........</font>
    【1】字体大小 <font size=#>..........</font> #=1~7;数字愈大字也愈大
    【2】指定字型 <font face="字型名称">..........</font>
    【3】文字颜色 <font color=#rrggbb>..........</font> rr:表红色(red)色码 gg:表绿色(green)色码 bb:表蓝色(blue)色码
    3.显示小字体 <small>..........</small>
    4.显示大字体 <big>..........</big>
    5.粗体字 <b>..........</b>
    6.斜体字 <i>..........</i>
    7.打字机字体 <tt>..........</tt>
    8.底线 <u>..........</u>
    9.删除线 <strike>..........</strike>
    10.下标字 <sub>..........</sub>
    11.上标字 <sup>..........</sup>
    12.文字闪烁效果 <blink>..........</blink>
    13.换行 <br>
    14.分段 <p>
    15.文字的对齐方向 <p align="#"> #号可为 left:表向左对齐(预设值) center:表向中对齐 right:表向右对齐 P.S.<p align="#">之後的文字都会以所设的对齐方式显示, 直到出现另一个<p align="#">改变其对齐方向,或遇到 <hr>ⅱ<h#>标签时会自动设回预设的向左对齐。
    16.分隔线 <hr>
    【1】分隔线的粗细 <hr size=点数>
    【2】分隔线的宽度 <hr size=点数或百分比>
    【3】分隔线对齐方向 <hr align="#"> #号可为 left:表向左对齐(预设值) center:表向中对齐 right:表向右对齐
    【4】分隔线的颜色 <hr color=#rrggbb>
    【5】实心分隔线 <hr noshade>
    17.向中对齐 <center>..........</center>
    18.依原始样式显示 <pre>..........</pre>
    19.<body>指令的属性
    【1】背景颜色 -- bgcolor <body bgcolor=#rrggbb>
    【2】背景图案 -- background <body background="图形文件名">
    【3】设定背景图案不会卷动 -- bgproperties <body bgproperties=fixed>
    【4】文件内容文字的颜色 -- text <body text=#rrggbb>
    【5】超连结文字颜色 -- link <body link=#rrggbb>
    【6】正被选取的超连结文字颜色 -- vlink <body vlink=#rrggbb>
    【7】已连结过的超连结文字颜色 -- alink <body alink=#rrggbb>
    20.注解 <!--..........-->21.特殊字元表示法
    符 号   语 法
    <    &lt
    >    &gt
    &     &amp
    "    &quot
    空白   &nbsp
     

    图片
    1.插入图片 <img src="图形文件名">
    2.设定图框 -- border <img src="图形文件名" border=点数>
    3.设定图形大小 -- widthⅱheight <img src="图形文件名" width=宽度点数 height=高度点数>
    4.设定图形上下左右留空 -- vspaceⅱhspace <img src="图形文件名" vspace=上下留空点数 hspace=左右留空点数>
    5.图形附注 <img src="图形文件名" alt="说明文字">
    6.预载图片
    <img src="高解析度图形文件名" lowsrc="低解析度图形文件名"> P.S.两个图的图形大小最好一致
    7.影像地图(Image Map) <img src="图形文件名" usemap="#图的名称"> <map name="图的名称">
    <area shape=形状 coords=区域座标列表 href="连结点之URL">
    <area shape=形状 coords=区域座标列表 href="连结点之URL">
    <area shape=形状 coords=区域座标列表 href="连结点之URL">
    <area shape=形状 coords=区域座标列表 href="连结点之URL"> </map>
    【1】定义形状 -- shape
    shape=rect:矩形 shape=circle:圆形 shape=poly:多边形
    【2】定义区域 -- coords
    a.矩形:必须使用四个数字,前两个数字为左上角座标,后两个数字为右下角座标
    例:<area shape=rect coords=100,50,200,75 href="URL">
    b.圆形:必须使用三个数字,前两个数字为圆心的座标,最后一个数字为半径长度
    例:<area shape=circle coords=85,155,30 href="URL">
    c.任意图形(多边形):将图形之每一转折点座标依序填入
    例:<area shape=poly coords=232,70,285,70,300,9
  • HTML标记大全参考手册

    [ 作者:三林在线收集 转贴自:三林在线收集 点击数:60 更新时间:2004-9-30 文章录入:wencheng ]

    减小字体 增大字体
    -- HTML标记大全参考手册[推荐]
    总类(所有HTML文件都有的)
     

    文件类型 <HTML></HTML> (放在档案的开头与结尾)
    文件主题 <TITLE></TITLE> (必须放在「文头」区块内)
    文头 <HEAD></HEAD> (描述性资料,像是「主题」)
    文体 <BODY></BODY> (文件本体)

    ------------------------------------------------------------结构性定义(由浏览器控制的显示风格)

    标题 <H?></H?> (从1到6,有六层选择)
    3.0 标题的对齐 <H? ALIGN=LEFT|CENTER|RIGHT></H?>
    3.0 区分 <DIV></DIV>
    3.0 区分的对齐 <DIV ALIGN=LEFT|RIGHT|CENTER|JUSTIFY></DIV>
    引文区块 <BLOCKQUOTE></BLOCKQUOTE> (通常会内缩)
    强调 <EM></EM> (通常会以斜体显示)
    特别强调 <STRONG></STRONG> (通常会以加粗显示)
    引文 <CITE></CITE> (通常会以斜体显示)
    码 <CODE></CODE> (显示原始码之用)
    样本 <SAMP></SAMP>
    键盘输入 <KBD></KBD>
    变数 <VAR></VAR>
    定义 <DFN></DFN> (有些浏览器不提供)
    地址 <ADDRESS></ADDRESS>
    3.0 大字 <BIG></BIG>
    3.0 小字 <SMALL></SMALL>

    ------------------------------------------------------------与外观相关的标签(作者自订的表现方式)

    加粗 <B></B>
    斜体 <I></I>
    3.0 底线 <U></U> (尚有些浏览器不提供)
    3.0 删除线 <S></S> (尚有些浏览器不提供)
    3.0 下标 <SUB></SUB>
    3.0 上标 <SUP></SUP>
    打字机体 <TT></TT> (用单空格字型显示)
    预定格式 <PRE></PRE> (保留文件中空格的大小)
    预定格式的宽度 <PRE WIDTH=?></PRE>(以字元计算)
    N1.0+ 向中看齐 <CENTER></CENTER> (文字与图片都可以)
    N1.0 闪耀 <BLINK></BLINK> (有史以来最被嘲弄的标签)
    N1.0 字体大小 <FONT SIZE=?></FONT>(从1到7)
    N1.0 改变字体大小 <FONT SIZE=+|-?></FONT>
    N1.0 基本字体大小 <BASEFONT SIZE=?> (从1到7; 内定为3)
    N2.0 字体颜色 <FONT COLOR="#$$$$$$"></FONT>


    --------------------------------------------------------------------------------

    连结与图形

    连结 <A HREF="URL"></A>
    连结到锚点 <A HREF="URL#***"></A>(如果锚点在另一个档案)
    <A HREF="#***"></A> (如果锚点目前的档案)
    N2.0 连结到目的视框 <A HREF="URL" TARGET="***"></A>
    设定锚点 <A NAME="***"></A>
    图形 <IMG SRC="URL">
    图形看齐方式 <IMG SRC="URL" ALIGN=TOP|BOTTOM|MIDDLE>
    N1.0 图形看齐方式 <IMG SRC="URL"
    ALIGN=LEFT|RIGHT|TEXTTOP|ABSMIDDLE|BASELINE|ABSBOTTOM>
    取代文字 <IMG SRC="URL" ALT="***"> (如果没有办法显示图形则显示此文字)
    点选图 <IMG SRC="URL" ISMAP> (需要CGI程式)
    N2.0 点选图 <IMG SRC="URL" USEMAP="URL">
    N2.0 地图 <MAP NAME="***"></MAP>(描述地图)
    N2.0 段落 <AREA SHAPE="RECT" COORDS=",,," HREF="URL"|NOHREF>
    3.0 大小 <IMG SRC="URL" WIDTH="?" HEIGHT="?">(以pixels为单位)
    N1.0 图形边缘 <IMG SRC="URL" BORDER=?> (以pixels为单位)
    N1.0 图形边缘空间 <IMG SRC="URL" HSPACE=? VSPACE=?> (以pixels为单位)
    N1.0 低解析度图形 <IMG SRC="URL" LOWSRC="URL">
    N1.1 用户端拉 <META HTTP-EQUIV="Refresh" CONTENT="?; URL=URL">(使用端自动更新 )
    N2.0 内嵌物件 <EMBED SRC="URL"> (将物件插入页面)
    N2.0 内嵌物件大小 <EMBED SRC="URL" WIDTH="?" HEIGHT="?">


    --------------------------------------------------------------------------------

    分隔

    段落 <P> (通常是两个return)
    3.0 段落 <P></P> (新定义成容器型标签)
    3.0 文字看齐方式 <P ALIGN=LEFT|CENTER|RIGHT></P>
    换行 <BR> (一个return)
    N1.0 文字部份看齐方式<BR CLEAR=LEFT|RIGHT|ALL>(与图形合用时)
    横线 <HR>
    N1.0 横线对齐 <HR ALIGN=LEFT|RIGHT|CENTER>
    N1.0 横线厚度 <HR SIZE=?> (以pixels为单位)
    N1.0 横线宽度 <HR WIDTH=?> (以pixels为单位)
    N1.0 横线比率宽度 <HR WIDTH=%> (以页宽为100%)
    N1.0 实线 <HR NOSHADE> (没有立体效果)
    N1.0 不可换行 <NOBR></NOBR> (不换行)
    N1.0 可换行处 <WBR> (如果需要,可在此断行)


    --------------------------------------------------------------------------------

    列举 (可以巢状列举)

    无次序式列举 <UL><LI></UL> (<LI> 放在每一项前)
    N1.0 公布式列举 <UL TYPE=DISC|CIRCLE|SQUARE>(定义全部的列举项)
    <LI TYPE=DISC|CIRCLE|SQUARE>(定义这个及其後的列举项)
    有次序式列举 <OL><LI></OL> (<LI> 放在每一项前)
    N1.0 数标型态 <OL TYPE=A|a|I|i|1> (定义全部的列举项)
    <LI TYPE=A|a|I|i|1> (定义这个及其
  • JCREATOR3.0 中文乱码的一种解决办法

    引起汉字显示不正常的地方主要有: 注释(包括/**/ //) 字符串("") 解决方案:
    打开: \Xinox Software\JCreatorV3\Syntax\java.syn 或者 jsp.syn(写jsp也会有乱码)等
    找到以下内容,其中将注释(/**/ //)和字符串的开始和结尾字符去掉,
    <syntax>
    <syntaxstart><%</syntaxstart>
    <syntaxend>%></syntaxend>
    <extcommentstart>/*</extcommentstart> 去掉/*
    <extcommentend>*/</extcommentend> 去掉*/
    <extcommentstart2/>
    <extcommentend2/>
    <commentstart>//</commentstart> 去掉//
    <commentend/>
    <stringstart>"</stringstart> 去掉"
    <stringend>"</stringend> 去掉"
    <charstart>'</charstart>
    <charend>'</charend>
    <preprocessor/>
    <operators>-+*/<>!~%^&|=</operators>
    <brackets>[](){}</brackets>
    <escape>\</escape>
    </syntax>
    最后显示成:(将注释符号去掉)
    <syntax>
    <syntaxstart><%</syntaxstart>
    <syntaxend>%></syntaxend>
    <extcommentstart></extcommentstart>
    <extcommentend></extcommentend>
    <extcommentstart2/>
    <extcommentend2/>
    <commentstart></commentstart>
    <commentend/>
    <stringstart></stringstart>
    <stringend></stringend>
    <charstart>'</charstart>
    <charend>'</charend>
    <preprocessor/>
    <operators>-+*/<>!~%^&|=</operators>
    <brackets>[](){}</brackets>
    <escape>\</escape>
    </syntax>





    Feedback
    # 回复:JCREATOR3.0 中文乱码的一种解决办法 2004-07-22 12:35 PM stlinuxily
    谢谢,的确可以解决问题,不过在下有一个建议:
    能不能把改动过的地方做个标记,您这在这里把上面的贴出来,可我发现比不贴出来还要麻烦……,难得找哦……

    # 回复:JCREATOR3.0 中文乱码的一种解决办法 2004-07-28 8:57 PM dancingalone
    不知道jsp.syn怎么修改呀 还望帮忙 在jsp中似乎<!-- -->这样的注释也会出现乱码

    # 回复:JCREATOR3.0 中文乱码的一种解决办法 2004-07-29 12:34 PM yizdream
    本文章在处理jsp,和java.syn一样处理
    关于<!---->你可以删除
    <stringstart><!--</stringstart>
    <stringend>--></stringend>
    这里面的<!--,-->

    # 回复:JCREATOR3.0 中文乱码的一种解决办法 2004-08-13 9:48 AM Java
    不错,困扰我的问题解决了.

    # 回复:JCREATOR3.0 中文乱码的一种解决办法 2004-08-13 5:27 PM 稻草上的火鸡
    这样的解决办法不好,因为你删除了 这些只有,语法高亮就 不正确了,希望给一种好的方法

    # 回复:JCREATOR3.0 中文乱码的一种解决办法 2004-08-24 11:59 AM laoda
    JSP中的代码片段中文注释怎么还是乱码呀,我把JSP.SYN中的语法部分全去除了也不行。怎么修改呀????

    # 回复:JCREATOR3.0 中文乱码的一种解决办法 2004-08-24 2:49 PM yizdream
    一样的作法,去掉/* 等符号。
    最近有点讨厌jcreator了,,,喜欢上了eclipse

    # 回复:JCREATOR3.0 中文乱码的一种解决办法 2004-08-29 7:59 PM 流浪狗
    怎么文字是睡觉的姿势啊,能有办法站起来么

    # 回复:JCREATOR3.0 中文乱码的一种解决办法 2004-09-09 7:23 PM 333
    我怎么改了还没用呀

    # 回复:JCREATOR3.0 中文乱码的一种解决办法 2004-09-13 2:36 PM netwjx
    放弃了颜色提示 有点不是很完美
    不过总算一点中文都不能用好点

    希望能通过修改字符编码格式的方法解决这个问题

    [face42]
  • 在html文件引入其它html文件的几种方法
    简介:在论坛中常常有网友问到,可以在一个html的文件当中读取另一个html文件的内容吗?答案是确定的,而且方法不只一种,在以前我只会使用iframe来引用,后来发现了另外的几种方法,那今天就总结这几种方法让大家参考一下,本人觉得第三种方式较好!
    1.IFrame引入,看看下面的代码

    [代码] <IFRAME NAME="content_frame" width=100% height=30 marginwidth=0 marginheight=0 SRC="import.htm" ></IFRAME>


    你会看到一个外部引入的文件,但会发现有一个类似外框的东西将其包围,可使用
    [代码] <iframe name="content_frame" marginwidth=0 marginheight=0 width=100% height=30 src="import.htm" frameborder=0></iframe>


    但你会发现还会有点问题,就是背景色不同,你只要在引入的文件import.htm中使用相同的背景色也可以,但如果你使用的是IE5.5的话,可以看看这篇关于透明色的文章 如果想引入的文件过长时不出现滚动条的话在import.htm中的body中加入scroll=no


    2.<object>方式

    [代码] <object style="border:0px" type="text/x-scriptlet" data="import.htm" width=100% height=30></object>


    3.Behavior的download方式

    [代码]
    <span id=showImport></span>
    <IE:Download ID="oDownload" STYLE="behavior:url(#default#download)" />
    <script>
    function onDownloadDone(downDate){
    showImport.innerHTML=downDate
    }
    oDownload.startDownload(’import.htm’,onDownloadDone)
    </script>

  • 制作可执行的JAR文件包及jar命令详解
    http://www.chinaunix.net 作者:郝君 发表于:2003-08-12 14:32:38
    常常在网上看到有人询问:如何把 java 程序编译成 .exe 文件。通常回答只有两种,一种是制作一个可执行的 JAR 文件包,然后就可以像.chm 文档一样双击运行了;而另一种是使用 JET 来进行 编译。但是 JET 是要用钱买的,而且据说 JET 也不是能把所有的 Java 程序都编译成执行文件,性能也要打些折扣。所以,使用制作可执行 JAR 文件包的方法就是最佳选择了,何况它还能保持 Java 的跨平台特性。

    下面就来看看什么是 JAR 文件包吧:

    1. JAR 文件包

    JAR 文件就是 Java Archive File,顾名思意,它的应用是与 Java 息息相关的,是 Java 的一种文档格式。JAR 文件非常类似 ZIP 文件——准确的说,它就是 ZIP 文件,所以叫它文件包。JAR 文件与 ZIP 文件唯一的区别就是在 JAR 文件的内容中,包含了一个 META-INF/MANIFEST.MF 文件,这个文件是在生成 JAR 文件的时候自动创建的。举个例子,如果我们具有如下目录结构的一些文件:

      ==

      `-- test

        `-- Test.class

    把它压缩成 ZIP 文件 test.zip,则这个 ZIP 文件的内部目录结构为:

      test.zip

      `-- test

        `-- Test.class

    如果我们使用 JDK 的 jar 命令把它打成 JAR 文件包 test.jar,则这个 JAR 文件的内部目录结构为:

      test.jar

      |-- META-INF

      |  `-- MANIFEST.MF

      `-- test

        `--Test.class

    2. 创建可执行的 JAR 文件包

    制作一个可执行的 JAR 文件包来发布你的程序是 JAR 文件包最典型的用法。

    Java 程序是由若干个 .class 文件组成的。这些 .class 文件必须根据它们所属的包不同而分级分目录存放;运行前需要把所有用到的包的根目录指定给 CLASSPATH 环境变量或者 java 命令的 -cp 参数;运行时还要到控制台下去使用 java 命令来运行,如果需要直接双击运行必须写 Windows 的批处理文件 (.bat) 或者 Linux 的 Shell 程序。因此,许多人说,Java 是一种方便开发者苦了用户的程序设计语言。

    其实不然,如果开发者能够制作一个可执行的 JAR 文件包交给用户,那么用户使用起来就方便了。在 Windows 下安装 JRE (Java Runtime Environment) 的时候,安装文件会将 .jar 文件映射给 javaw.exe 打开。那么,对于一个可执行的 JAR 文件包,用户只需要双击它就可以运行程序了,和阅读 .chm 文档一样方便 (.chm 文档默认是由 hh.exe 打开的)。那么,现在的关键,就是如何来创建这个可执行的 JAR 文件包。

    创建可执行的 JAR 文件包,需要使用带 cvfm 参数的 jar 命令,同样以上述 test 目录为例,命令如下:

    jar cvfm test.jar manifest.mf test

    这里 test.jar 和 manifest.mf 两个文件,分别是对应的参数 f 和 m,其重头戏在 manifest.mf。因为要创建可执行的 JAR 文件包,光靠指定一个 manifest.mf 文件是不够的,因为 MANIFEST 是 JAR 文件包的卣鳎
  • 在赛迪网上发表的一篇文章,不错的!

    http://tech.ccidnet.com/pub/article/c1078_a120987_p1.html

    用Java程序获取绝对路径
    作者:侯广新 发文时间:2004.06.15

    前一段做个程序,遇到了这样一个问题,想利用相对路径删掉一个文件(实际存在的),老是删不掉. 真是急人呀,最后让我费了好大力气才算把它解决掉,问题不防跟大家说说,万一遇到这样的问题,就不用再费劲了!

    情况是这样的:我的Tomcat装在了c盘,而我的虚拟目录设在了E:/work下, 我在E:/work/test/image下有个图片,test.gif 我想通过程序删掉它,但他的绝对路径不确定(为了考虑到程序以后的移植,绝对路径是不确定的)。

    假设del.jsp文件在e:/work/test 下,用下面的程序好像可以删掉:

    <!--原始的del.jsp源文件-->
    <%@ page contentType="text/html; charset=GBK" errorPage="" %>
    <%request.setCharacterEncoding("GBK");%>
    <%@ page language="java" import="java.sql.*" import="java.util.*" import ="java.text.*" import="java.io.*"%>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=GBK">
    <title>删除成功页面</title>
    </head>
    <body>
    File f=new File("/image/",test.gif);
    boolean a=f.delete();
    out.print("a="+a);
    </body>
    </html>



    但事实上不行,你会发现a=false;

    这就需要获取其绝对路径, 我们用java程序来做一个专门来获取绝对路径的javaBean(path_test.java)就可以了。

    path_test.java的代码如下:

    package pathtest;
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.jsp.PageContext;//导入PageContext类,不要忘了
    public class path_test
    {

    protected ServletContext m_application;
    private boolean m_denyPhysicalPath;
    public path_test()
    {

    }
    public final void initialize(PageContext pageContext)
    throws ServletException
    {
    m_application = pageContext.getServletContext();

    }

    public String getPhysicalPath(String filePathName, int option)
    throws IOException
    {
    String path = new String();
    String fileName = new String();
    String fileSeparator = new String();
    boolean isPhysical = false;
    fileSeparator=System.getProperty("file.separator");
    if(filePathName == null)
    throw new IllegalArgumentException("There is no specified destination file (1140).");
    if(filePathName.equals(""))
    throw new IllegalArgumentException("There is no specified destination file (1140).");
    if(filePathName.lastIndexOf("\\") >= 0)
    {
    path = filePathName.substring(0, filePathName.lastIndexOf("\\"));
    fileName = filePathName.substring(filePathName.lastIndexOf("\\") + 1);
    }
    if(filePathName.lastIndexOf("/") >= 0)
    {
    path = filePathName.substring(0, filePathName.lastIndexOf("/"));
    fileName = filePathName.substring(filePathName.lastIndexOf("/") + 1);
    }
    path = path.length() != 0 ? path : "/";
    java.io.File physicalPath = new java.io.File(path);
    if(physicalPath.exists())
    isPhysical = true;
    if(option == 0)
    {
    if(isVirtual(path))
    {
    path = m_application.getRealPath(path);
    if(path.endsWith(fileSeparator))
    path = path + fileName;
    else
    path = String.valueOf((new StringBuffer(String.valueOf(path))).append(fileSeparator).append(fileName));
    return path;
    }
    if(isPhysical)
    {
    if(m_denyPhysicalPath)
    throw new IllegalArgumentException("Physical path is denied (1125).");
    else
    return filePathName;
    } else
    {
    throw new IllegalArgumentException("This path does not exist (1135).");
    }
    }
    if(option == 1)
    {
    if(isVirtual(path))
    {
    path = m_application.getRealPath(path);
    if(path.endsWith(fileSeparator))
    path = path + fileName;
    else
    path = String.valueOf((new StringBuffer(String.valueOf(path))).append(fileSeparator).append(fileName));
    return path;
    }
    if(isPhysical)
    throw new IllegalArgumentException("The path is not a virtual path.");
    else
    throw new IllegalArgumentException("This path does not exist (1135).");
    }
    if(option == 2)
    {
    if(isPhysical)
    if(m_denyPhysicalPath)
    throw new IllegalArgumentException("Physical path is denied (1125).");
    else
    return filePathName;
    if(isVirtual(path))
    throw new IllegalArgumentException("The path is not a physical path.");
    else
    throw new IllegalArgumentException("This path does not exist (1135).");
    }

    else
    {
    return null;
    }

    }
    private boolean isVirtual(String pathName) //判断是否是虚拟路径
    {
    if(m_application.g
  • 2004-06-05

    程序员的德行 - [计算机]

    程序员的德行
    (文章来源:登龙门人力资源网络 作者:赵月旺  2003.06.12)

      程序员一定要除了基本的道行修炼外。更重要的是德行修炼。德行=合作能力或沟通能力。对于规模大,生命周期长(特别是衍生生命周期长)的软件项目而言,德行更重要。
      德行的标准
      软件开发离不开企业,企业的文化决定着程序员的行为规范,比较理想的企业文化是:
      沟通方式开放、自由、平等,个人长期发展和企业发展的有限度统一。这样的企业文化,必然会造就具有长远眼光和冒险精神的将帅之才。
      这方面的楷模是微软公司,该公司全球员工平均年龄只有28岁,无论在全球的哪家公司,微软评判人才的标准都是相同的。挑选员工的第一标准是应聘者是否具有良好的品德。微软认为,良好的品质是职业道德的基础。其次,看应聘者解决问题的能力如何,在面对困难时是退缩,还是勇往直前,因为实际工作中常有新问题需要解决。第三,要测试应聘者有没有快速学习的能力,日新月异的技术发展要求有快速学习能力。另外,团队精神、责任心、工作热情、创新精神和独立工作能力都是必须的。
      好的企业文化熏陶出来的程序员,必然是关注个人长远发展的职业精英,这样的程序员必然会较早地设定自己的职业发展管道。比如:
      管理序列:程序员->项目管理人员->中级管理人员->高级管理人员;
      技术序列:程序员->高级程序员->需求分析师\\架构工程师\\质量管理;
      市场序列:程序员->售前支持->销售;
      与这样的个人职业发展管道相适应的个人技能是:
      ——软件基础理论扎实;
      ——系统分析与设计能力较强;
      ——具有熟练的系统开发、系统测试与系统维护技术和管理技能;
      ——较强的项目管理能力和交流与组织协调能力;
      ——在企业既能适应软件产品研发,又能适应项目管理岗位;
      ——具备独立工作能力和创新意识。
      在项目开发过程中,有效沟通非常重要,沟通的形式多种多样,除了常见的几种方式外,下面讲几种比较有特点的沟通方式:
      * 历史和现在
      如何最大程度地挖掘过去成果的价值,需要讲过去的成果(算法,code,设计思想等)进行再组织,使之可以被快速检索。
      * 标准化
      “最好的沟通是没有沟通”,通过标准化的技术手段,使个人的输出可以被他人非常容易地了解,这样可以避免沟通带来的效率低下。
      * 技术一致性
      软件技术的发展,使得程序员这个职业需要不断细分,这带来的最大问题是不同技术间的互通问题。为此,在程序开发过程中,需要不断进行的技术预研变得越来越重要。并且,只要满足功能需求,就采用最简单的实现技术。
      * 简单性
      程序规模变得越来越庞大的同时,修正Bug的代价程指数级增长。因此,尽量少用比较容易犯错误的编程技术(比如C语言的指针),尽量采用简单(牺牲效率)的算法,接口间尽量少一些“合并点”,将是非常有价值的。
      不良的德行
      尽管国内程序员有一些普遍的优点:比如有雄心壮志,面对困难时比较坚毅,理论基础、尤其是数学功底扎实,编程能力强,吃苦耐劳、讲纪律、讲服从等。
      而缺点也是突出的:创新精神不足,做事缺乏主动,独立从事研究的能力弱,对很多事没有主见,而且有想法不直接说,对新知识了解不够,不善于与人交流,缺乏合作精神。
      还有一些缺点:不诚实——表现在答应了的事不去做;贪小便宜——用公司设备办私事;不够踏实——急功近利,擅长做表面文章。
      这些不良德行在实际的程序开发中表现如下:
      * 滥用不变量,以自己模块调试通过为最高目的
      大家知道,程序中到处存在着“瓶颈”,这些瓶颈是造成程序运行时不稳定的最重要的因素之一。比方说,在模块接口间定义了一个用常数开辟的内存空间。消除这些瓶颈要从几个方面入手:
      ——采用技术手段减少不变量的使用,不要给别人造成麻烦;
      ——集中使用不变量,方便自己的上司作出Bug修正决定;
      ——应用各种异常捕获机制,在不变量导致的异常出现点进行精确定位;
      * 不尊重文档,契约意识淡薄
      应该把文档看成法律合同,要认真书写,完全彻底地遵守。并且,一旦发现定义模糊的地方,应该及时通报作者进行适当修正。
      * 不写或少写注释,小农思想严重
      程序是共有的,模块是不能独活的,注释可以帮助测试人员和维护人员的工作,并且,特别利于软件重用,最大限度地延长模块的生命周期;
      * 不关心他人的进度,个人利益高于以前
      开发进度的平衡是一个项目成功的重要标志。个人的能力是不平衡的,每个人的工作量也是不平衡的。关心他人的进度,并在适当时机施以援手,将最大程度地消除开发进度中“人的瓶颈”。要知道:团队成功是个人成功的前提;
      * 不借鉴他人的闪光点,偏重技术,忽视德行,难成大器
      创新分精神创新和内容创新。有一个有趣的现象,大家大概都经历过,比如:A在他负责的模块内用了一个算法,得到领导表扬;B就另外写一个算法,可能B的算法要好,但,站在整个项目的角度看,B的行为是有害的,因为他损害了沟
  • 《如何迅速成为Java高手!》
    [转贴]转自www.java.com.cn

    很多网友问我学习Java有没有什么捷径,我说“无他,唯手熟尔”。但是我却很愿意将自己
    学习的一些经验写出来,以便后来者少走弯路,帮助别人是最大的快乐嘛!
    要想学好Java,首先要知道Java的大致分类。我们知道,自从Sun推出Java以来,就力图使
    之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就
    是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件
    的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主
    要用于分布式的网络程序的开发,如电子商务网站和ERP系统。J2SE开发桌面应用软件比起
    VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有
    点深奥,而且一般开发者很难有开发环境。所以现在应用最广泛又最好学的就是J2EE了。
    J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是
    一两天的事。
    那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉
    了吗?然后再从JSP学起。如果你学过HTML,那么事情要好办的多,如果没有,那你快去补
    一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。然后你
    就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文
    件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,
    这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清
    晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱
    方式了,这种方式跟ASP又有什么区别呢?还好,SUN提供了Javabean可以把你的JSP中的
    Java代码封装起来,便于调用也便于重用。接着就是EJB了,EJB就是Enterprise JavaBean,
    看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭
    建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的
    Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工
    作都在设计和配置中间件上。至于JDBC,就不用我多说了,你如果用java编过存取数据库的
    程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail
    了。
    好了,对Java和J2EE有了一些基本概念之后,你就应该编一些程序了,千万不要纸上谈兵
    哦。最好找一些有实例且带光盘的书来看,这样看到好的程序就可以直接Ctrl+C再Ctrl+V,
    也不用劳您老大架再亲自把它 再输一遍吧,再说直接复制还不用怕出错,何乐而不为呢!
    还有就是要经常上一些好的Java编程文章,有好的文章要Cut下来,有问题尽管问,只要问
    题不是太傻,一般高手都会回答你的。下面介绍几个好的Java方面的编程网站:
    CSDN论坛 http://www.csdn.net/ 中国最有名的技术论坛,《程序员》杂志就是他们出版
    的,你可以在上面提出问题,马上就有人回答你,如果你觉得好,你可以给那人加分;
    Java研究组织http://www.javaresearch.org/ 上面有很多原创文章,高手还是挺多的;
    Java开发者 http://www.chinajavaworld.com/ 那里Java资