LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

谈谈ASP、PHP和JSP等Web动态信息发布技术各自的概念和特点

admin
2012年4月25日 0:2 本文热度 3231
目前流行的开发Web动态信息网页的解决方法大概有以下几种:ASP、PHP、JSP、ISAPI、CGI等,这些开发技术各有其优缺点。JSP与PHP、ASP、ISAPI、CGI比较,有相当多的优点。由于目前CGI和ISAPI技术被使用的广泛程度远不如前三者,在这里就不详细探讨了,而对ASP、PHP和JSP做一个理论上的比较分析。
1 ASP、PHP和JSP的概念
ASP(Active Server Pages)是微软公司IIS中的一个组件。它提供一个服务器端的VBScript/JScript脚本运行环境,当脚本运行在服务器端时,WEB服务器完成涉及回送浏览器HTML页的所有工作,并返回相应的HTML文本。ASP直接在HTML文件中嵌入服务器端脚本,使动态交互页面的开发成为一个整体,开发与维护工作变得简单、快捷。同时,由于它是在服务器端的脚本,一般用户无法看到,从而有效地保证了系统的安全性及开发人员的知识产权。
PHP(Hypertext Preprocessor)是Rasmus Lerdorf推出的一种跨平台的服务器端的嵌入式脚本语言,大量借用C、Java和Perl语言的语法,并结合PHP自身的特性,使Web开发者能够快速地编制出动态网页。PHP完全是免费的,可以自由下载,甚至可以不受限制地获得源码,从而加进自己的特色。
JSP(Java Server Pages)是基于Java的技术,也是一种开发Web后台程序的技术,是由Sun Microsystems公司于1999年6月推出的新技术,是基于JavaServlet以及整个Java体系的Web开发技术。该技术是由Sun Microsystems公司倡导、许多公司与企业参与一起建立的一种先进、安全、开放和跨平台的动态网页技术标准,这种技术标准的意义在于找到了一种为应用和页面开发人员平衡可移植性和易用性的开发方法。
2 性能与特点
ASP无需编译、链接即可解释执行,它集成于HTML中,使用常规文本编辑器就可以开发。ASP程序与浏览器无关,用户端只要使用常规的可执行HTML码的浏览器即可浏览。ASP的脚本语言(VBScript,Jscript)是在服务器上执行,客户端的浏览器不需要执行这些脚本语言。ASP还可通过Ac-tiveX服务器端组件(ActiveX Server Component)来扩充功能,ActiveX Server Component可使用VB,Java,C++,COBOL等语言来实现。此外,ASP技术可以和任何脚本语言兼容。除了可使用Vbscript或Jscript语言来作为脚本语言,还可通过插件的方式,使用由第三方所提供的其他脚本语言。ASP的源程序代码不会被传到用户的浏览器,可以保护源程序。被传到客户端浏览器的是ASP程序的执行结果。但ASP的安全性不好,漏洞比较多。另一方面,ASP程序虽然十分简单,容易编写,但是由于ASP使用的主要脚本语言是VBScript,功能有限。
PHP简单易学,可以方便快捷地编写出功能强大,可同时运行于Windows、Unix、Linu平台的Web后台程序,任何人在遵守GNU条约的情况下,均可免费使用并更改其源码。PHP采用与ASP类似的边解释边执行内嵌的脚本代码以访问后台数据库并与用户交互。提供众多的协议支持,如HTTP、IMAP、POP3、及NNTP等,使得PHP在跨平台方面有很好的表现。PHP支持目前绝大多数的数据库,具有许多与各类数据库连接的函数。它与MYSQL是一对绝佳的组合,此外还可以自己编写外围的函数间接存取数据库。其优点是支持的数据库系统很多,而且可以自己定制PHP解释器的功能,但是PHP提供的数据库接口支持不统一,比如对Oracle、MySQL、Sybase等数据库的访问接口,彼此都不一样,这是PHP的一个缺点。
JSP程序的最大特点是将网页内容的生成和显示进行分离。使用JSP技术,Web页面开发人员可以使用HTML或者XML标记来设计和格式化最终页面的样式。使用Java代码段来生成页面上的动态内容。生成网页内容的程序代码被封装在JSP定界符内和JavaBeans组件中,所有的脚本都在服务器端编译运行。JSP技术封装了许多重要的功能,如访问和实例化JavaBeans组件,控制HTTP连接,获取客户端的请求信息,下载Applet等。通过开发XML标记库(Tag Library),JSP技术可以较方便地扩展。JSP页面的内置脚本语言是基于Java编程语言的,拥有Java编程语言“一次编写,各处运行”的特点,而且所有的JSP程序都将被编译成为Java类文件(扩展名为class)。JSP程序具有Java技术的所有好处,包括内存管理和安全性。
3 三者的区别 
3.1 运行环境 ASP只能运行于微软的服务器产品上。Unix平台下也有ChiliSoft公司开发的插件来支持ASP,但是ASP本身的功能有限,必须通过ASP和COM组件的组合来扩充,Unix下的COM组件实现起来非常困难。而PHP可在Windows和Unix平台的Web服务器上运行,还可以支持IIS和Apache等通用Web服务器,但是用户在更换平台时,需要做比较大的改变。JSP同PHP类似,几乎可以运行于所有平台。目前,几乎所有平台都支持Java,JSP+JavaBean可以在所有平台下通行无阻。从一个平台移植到另外一个平台,JSP和JavaBean甚至不用重新编译,因为Java字节码都是标准的、与平台无关的。
3.2 开发语言和性能比较 ASP使用VBScript和Jscript等脚本语言,JSP技术用Java语言作为脚本语言,Java是成熟、强大、易于扩充的编程语言,优于基于Basic的脚本语言。如:Java的可执行性优于VBScript或JScript语言,因为它们利用Java技术并且都被编译成Java Servlets。PHP采用HTML的代码内嵌脚本语言,该语言中混合了C、Java、Perl以及它自己独有的语法,并主要来源于C语言,如控制流语句与C几乎完全一样、变量之间的运算符与C的类似、函数定义和调用与C的类似等。 
3.3 运行方式和执行效率 ASP和PHP在执行时,通过服务器将脚本语言解释成HTML语言。JSP首先是编译成Java Servlet引擎执行。在性能比较上有人做过试验,对这三种语言分别做循环性能测试及存取Oracle数据库测试。无论是在循环性能测试中,还是在数据库测试中,JSP最快。 
3.4 函数支持 JSP程序使用Java语言作为脚本语言,而且最后被编译为Java的class文件。这意味着在JSP程序中,可以使用任何可用的Java类库。目前,Java的类库超过了2万个,类库里面含有很多类,类里面又含有很多方法,这些类库几乎都可以在JSP程序中应用,而且Java的类库还在不断丰富之中。ASP技术由微软公司把持,第三方厂家很难介入。在ASP程序中,不能够直接调用C/C++的函数库,一般需要封装为ActiveX组件的形式,才能够在ASP程序中加以应用,而ActiveX组件的开发难度是较大的。PHP有6000多个函数支持,但是这6000多个函数有很多都是针对各种数据库系统的支持函数,而没有一个公共的接口统一封装起来。 
3.5 应用范围 在国内,PHP与ASP技术应用最为广泛。但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多采用JSP。ASP的安全漏洞且不去说,PHP本身也存在很多缺点,首先,PHP缺乏规模支持。其次,缺乏多层结构支持。对于大负荷站点,解决方法只有一个:分布计算。数据库、应用逻辑层、表示逻辑层彼此分开,而且同层也可在根据流量分开,组成二维阵列。而PHP则缺乏这种支持,且PHP提供的数据库接口支持不统一,这就使得它不适合运用在电子商务中。ASP和JSP则没有以上缺陷,ASP可以通过Microsoft Windows的COM/DCOM获得ActiveX规模支持,通过DCOM和Transcation Server获得结构支持;JSP可以通过JavaBeans和EJB获得规模支持,通过EJB/CORBA以及众多厂商的Application Server获得结构支持。 
3.6 性能比较 将ASP,PHP,JSP,CGI,ISAPI的性能做了一个比较,见表1。


从表1可以看出,JSP运行开销小,可以跨平台运行,扩展性很好。
4  结论
综上所述,ASP、PHP和JSP三种Web应用开发技术各有所长,而JSP在对XML的支持方面、函数支持方面,相对于其他几种技术有着明显的优势。JSP与XML结合非常紧密,JSP有两种语法形式,其中的一种语法形式完全符合XML规范,使用这种语法形式的JSP程序看起来就是一个标准的XML文件。JSP程序中还可以使用Tag Library,可以自定义具有特定功能的Tag,应用于JSP程序中,因而扩展JSP的功能变得十分容易。预计在未来几年里,国内将有愈来愈多的网站采用JSP技术。

 

参考文献
1 张洪波等.JSP/HTML编程实作教程•北京:北京希望电子出版社,2001
2 丁振凡.JSP与ASP编程之若干比较.计算机时代,2001;(9)
3 侯艳鹏,董志锋.Php性能分析及其应用.太原理工大学学报.2001;(6)

摘 要 介绍了ASP、PHP和JSP等Web动态信息发布技术各自的概念和特点,同时比较了各种发布技术的主要区别。通过分析,指出JSP技术是今后最重要的Web应用开发技术之一。

该文章在 2012/4/25 0:02:54 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved