快捷搜索:

ASP PHP JSP 大比拼

今朝,最常用的三种动态网页说话有ASP(Active Server Pages),JSP(JavaServer Pages),PHP (Hypertext Preprocessor)。

简 介

ASP全名Active Server Pages,是一个WEB办事器真个开拓情况,使用它可以孕育发生和运行动态的、交互的、高机能的WEB办事利用法度榜样。ASP采纳脚本说话VBScript(Java script)作为自己的开拓说话。

PHP是一种跨平台的办事器真个嵌入式脚本说话。它大年夜量地借用C,Java和Perl说话的语法, 并耦合PHP自己的特点,使WEB开拓者能够快速地写出动态天生页面。它支持今朝绝大年夜多半数据库。还有一点,PHP是完全免费的,不用费钱,你可以从PHP官方站点(http: //www.php.net)自由下载。而且你可以不受限定地得到源码,以致可以从中加进你自己必要的特色。

JSP是Sun公司推出的新一代站点开拓说话,他完全办理了今朝ASP,PHP的一个通病??脚本级履行(听说PHP4也已经在Zend的支持下,实现编译运行)。Sun公司借助自己在Java上的非凡造诣,将Java从Java利用法度榜样和Java Applet之外,又有新的硕果,便是JSP??Java Server Page。Jsp可以在Serverlet和JavaBean的支持下,完成功能强大年夜的站点法度榜样。

三者都供给在 HTML代码中混杂某种法度榜样代码、由说话引擎解释履行法度榜样代码的能力。但JSP代码被编译成 Servlet并由Java虚拟机解释履行,这种编译操作仅在对JSP页面的第一次哀求时发生。在ASP 、PHP、JSP情况下,HTML代码主要认真描述信息的显示样式,而法度榜样代码则用来描述处置惩罚逻辑。通俗的 HTML页面只依附于Web办事器,而ASP 、PHP、JSP页面必要附加的说话引擎阐发和履行法度榜样代码。法度榜样代码的履行结果被从新嵌入到HTML代码中,然后一路发送给浏览器。ASP 、PHP、JSP三者都是面向Web办事器的技巧,客户端浏览器不必要任何附加的软件支持。

技巧特征

ASP:

1. 应用VBScript 、 JScript等简单易懂的脚本说话,结合HTML代码,即可快速地完成网站的利用法度榜样。

2. 无须compile编译,轻易编写,可在办事器端直接履行。

3. 应用通俗的文本编辑器,如Windows的记事本,即可进行编辑设计。

4. 与浏览器无关(Browser Independence), 用户端只要应用可履行HTML码的浏览器,即可浏览Active Server Pages所设计的网页内容。Active ServerPages 所应用的脚本说话(VBScript 、 Jscript)均在WEB办事器端履行,用户真个浏览器不必要能够履行这些脚本说话。

5.Active Server Pages能与任何ActiveX scripting说话相容。除了可应用VB Script或JScript说话来设计外,还经由过程plug-in的要领,应用由第三方所供给的其他脚本说话,譬如REXX 、Perl 、Tcl等。脚本引擎是处置惩罚脚本法度榜样的COM(Component Object Model) 物件。

6. 可应用办事器真个脚原先孕育发生客户真个脚本。

7. ActiveX Server Components(ActiveX 办事器元件 )具有无限可扩充性。

可以应用Visual Basic 、Java 、Visual C++ 、COBOL等编程说话来编写你所必要的ActiveX Server Component 。

PHP:

1.数据库连接

PHP可以编译成具有与许多半据库相连接的函数。PHP与MySQL是现在绝佳的组合。你还可以自己编写外围的函数去间接存取数据库。经由过程这样的道路当你替换应用的数据库时,可以轻松地变动编码以适应这样的变更。PHPLIB便是最常用的可以供给一样平常事务必要的一系列基库。但PHP供给的数据库接口支持彼此不统一,比如对Oracle, MySQL,Sybase的接口,彼此都不一样。这也是PHP的一个弱点。

2.面向工具编程

PHP供给了类和工具。基于web的编程事情异常必要面向工具编程能力。PHP支持构造器、提取类等。

JSP:

1.将内容的天生和显示进行分离

应用JSP技巧,Web页面开拓职员可以应用HTML或者XML标识来设计和款式化终极页面。应用JSP标识或者小脚原先天生页面上的动态内容。天生内容的逻辑被封装在标识和JavaBeans组件中,并且绑缚在小脚本中,所有的脚本在办事器端运行。假如核心逻辑被封装在标识和Beans中,那么其他人,如Web治理职员和页面设计者,能够编辑和应用JSP页面,而不影响内容的天生。

在办事器端,JSP引擎解释JSP标识和小脚本,天生所哀求的内容(例如,经由过程造访JavaBeans组件,应用JDBCTM技巧造访数据库,或者包孕文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又包管任何基于HTML的Web浏览器的完全可用性。

2.强调可重用的组件

绝大年夜多半JSP页面依附于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeans组件)来履行利用法度榜样所要求的更为繁杂的处置惩罚。开拓职员能够共享和互换履行通俗操作的组件,或者使得这些组件为更多的应用者或者客户团体所应用。基于组件的措施加速了总体开拓历程,并且使得各类组织在他们现有的技能和优化结果的开拓努力中获得平衡。

3.采纳标识简化页面开拓

Web页面开拓职员不会都是认识脚本说话的编程职员。JavaServer Page技巧封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容天生所必要的。标准的JSP标识能够造访和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及履行用其他措施更难于编码和耗时的功能。

经由过程开拓定制化标识库,JSP技巧是可以扩展的。往后,第三方开拓职员和其他职员可以为常用功能创建自己的标识库。这使得Web页面开拓职员能够应用认识的对象和犹如标识一样的履行特定功能的构件来事情。

JSP技巧很轻易整合到多种利用体系布局中,以使用现存的对象和技术,并且扩展到能够支持企业级的散播式利用。作为采纳Java技巧家族的一部分,以及Java 2(企业版体系布局)的一个组成部分,JSP技巧能够支持高度繁杂的基于Web的利用。

因为JSP页面的内置脚本说话是基于Java编程说话的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技巧的所有好处,包括壮实的存储治理和安然性。

作为Java平台的一部分,JSP拥有Java编程说话“一次编写,遍地运行”的特征。跟着越来越多的供应商将JSP支持添加到他们的产品中,您可以应用自己所选择的办事器和对象,变动对象或办事器并不影响当前的利用。

利用范围

ASP是Microsoft开拓的动态网页说话,也承袭了微软产品的一直传统??只能运行于微软的办事器产品,IIS(Internet Information Server) (windows NT)和PWS(Personal Web Server)(windows 98)上。Unix下也有ChiliSoft的插件来支持ASP,然则ASP本身的功能有限,必须经由过程ASP+COM的组合来扩充,Unix下的COM实现起来异常艰苦。

PHP3可在Windows,Unix,Linux的Web办事器上正常运行,还支持IIS,Apache等通用Web办事器,用户替换平台时,无需变换PHP3代码,可即拿即用。

JSP同PHP3类似,险些可以运行于所有平台。如Win NT,Linux,Unix. NT下IIS经由过程一个插件,例如JRUN或者ServletExec,就能支持JSP。闻名的Web办事器Apache已经能够支持JSP。因为Apache广泛利用在NT、Unix和Linux上,是以JSP有更广泛的运行平台。虽然现在NT操作系统占了很大年夜的市场份额,然则在办事器方面Unix的上风仍旧很大年夜,而新崛起的Linux更是来势不小。从一个平台移植到别的一个平台,JSP和JavaBean以致不用从新编译,由于Java字节码都是标准的与平台无关的。

机能对照

有人做过试验,对这三种说话分手做轮回机能测试及存取Oracle数据库测试。

在轮回机能测试中,JSP只用了令人吃惊的四秒钟就停止了20000*20000的轮回。而ASP、PHP测试的是2000*2000轮回(少一个数量级),却分手用了63秒和84秒。(参考PHPLIB)。

数据库测试中,三者分手对 Oracle 8 进行 1000 次 Insert,Update,Select和Delete: JSP 必要 13 秒,PHP 必要 69 秒,ASP则 必要 73 秒。 前景阐发   今朝在海内PHP与ASP利用最为广泛。而JSP因为是一种较新的技巧,海内采纳的较少。但在国外,JSP已经是对照盛行的一种技巧,尤其是电子商务类的网站,多采纳JSP。

采纳PHP的网站如新浪网(sina)、中国人(Chinaren)等,但因为PHP本身存在的一些毛病,使得它不得当利用于大年夜型电子商务站点,而更得当一些小型的商业站点。

首先,PHP短缺规模支持。其次,短缺多层布局支持。对付大年夜负荷站点,办理措施只有一个:散播谋略。数据库、利用逻辑层、表示逻辑层彼此分开,而且同层也可以根据流量分开,组成二维阵列。而PHP则短缺这种支持。还有上面提到过的一点,PHP供给的数据库接口支持不统一,这就使得它不得当运用在电子商务中。

ASP和JSP则没有以上缺陷,ASP可以经由过程Microsoft Windowsd的COM/DCOM得到ActiveX规模支持,经由过程DCOM和Transcation Server得到布局支持;JSP可以经由过程SUN Java的Java Class和EJB得到规模支持,经由过程EJB/CORBA以及浩繁厂商的Application Server得到布局支持。

三者中,JSP应该是未来成长的趋势。天下上一些大年夜的电子商务办理规划供给商都采纳JSP/Servlet。对照出名的如IBM的E-business,它的核心是采纳JSP/Servlet的Web Sphere;西方别的一个异常闻名的电子商务软件供给商,Intershop,它原本的产品Intershop1,2, 3, 4盘踞了主要的电子商务软件份额。

它们都是经由过程CGI来供给支持的。但去年10月后它推出了Enfinity,一个采纳JSP/Servlet的电子商务Application Server,而且声言不再开拓传统软件。

总之,ASP,PHP,JSP三者都有相称数量的支持者,由此也可以看出三者各有千秋。正在进修或应用动态页面的同伙可根据三者的特征选择一种得当自己的说话。

您可能还会对下面的文章感兴趣: