仓酷云
标题:
ASP网页编程之ASP、JSP、PHP 三种手艺对照
[打印本页]
作者:
山那边是海
时间:
2015-1-16 23:41
标题:
ASP网页编程之ASP、JSP、PHP 三种手艺对照
由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。js|对照|js今朝,最经常使用的三种静态网页言语有ASP(ActiveServerPages),JSP(JavaServerPages),PHP(HypertextPreprocessor)。
简介
ASP全名ActiveServerPages,是一个WEB服务器真个开辟情况,使用它能够发生和实行静态的、互动的、高功能的WEB服务使用程序。ASP接纳剧本言语VBScript(Javascript)作为本人的开辟言语。
PHP是一种跨平台的服务器真个嵌进式剧本言语。它大批地借用C,Java和Perl言语的语法,并耦合PHP本人的特征,使WEB开辟者可以疾速地写出静态发生页面。它撑持今朝尽年夜多半数据库。另有一点,PHP是完整收费的,不必费钱,你能够从PHP官方站点(http://www.php.net)自在下载。并且你能够不受限定地取得源码,乃至能够从中加进你本人必要的特征。
JSP是Sun公司推出的新一代网站开辟言语,Sun公司借助本人在Java上的非凡成就,将Java从Java使用程序和JavaApplet以外,又有新的硕果,就是JSP,JavaServerPage。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.与扫瞄器有关(BrowserIndependence),客户端只需利用可实行HTML码的扫瞄器,便可扫瞄ActiveServerPages所计划的网页内容。ActiveServerPages所利用的剧本言语(VBScript、Jscript)均在WEB服务器端实行,客户真个扫瞄器不必要可以实行这些剧本言语。
5.ActiveServerPages能与任何ActiveXscripting言语兼容。除可以使用VBScript或JScript言语来计划外,还经由过程plug-in的体例,利用由第三方所供应的别的剧本言语,比如REXX、Perl、Tcl等。剧本引擎是处置剧本程序的COM(ComponentObjectModel)工具。
6.可以使用服务器真个剧本来发生客户真个剧本。
7.ActiveXServerComponents(ActiveX服务器组件)具有没有限可扩大性。可使用VisualBasic、Java、VisualC++、COBOL等程序计划言语来编写你所必要的ActiveXServerComponent。
PHP:
1数据库毗连
PHP能够编译成具有与很多数据库相毗连的函数。PHP与MySQL是如今尽佳的群组合。你还能够本人编写核心的函数往直接存取数据库。经由过程如许的路子当你改换利用的数据库时,能够轻松地修正编码以顺应如许的变更。PHPLIB就是最经常使用的能够供应一样平常事件必要的一系列基库。但PHP供应的数据库接口撑持相互不一致,好比对Oracle,MySQL,Sybase的接口,相互都纷歧样。这也是PHP的一个缺点。
JSP:
1.将内容的发生和显现举行分别
利用JSP手艺,Web页面开辟职员可使用HTML大概XML标识来计划和格局化终极页面。利用JSP标识大概小剧本来发生页面上的静态内容。发生内容的逻辑被封装在标识和JavaBeans群组件中,而且绑缚在小剧本中,一切的剧本在服务器端实行。假如中心逻辑被封装在标识和Beans中,那末别的人,如Web办理职员和页面计划者,可以编纂和利用JSP页面,而不影响内容的发生。在服务器端,JSP引擎注释JSP标识,发生所哀求的内容(比方,经由过程存取JavaBeans群组件,利用JDBC手艺存取数据库),而且将了局以HTML(大概XML)页面的情势发送回扫瞄器。这有助于作者回护本人的代码,而又包管任何基于HTML的Web扫瞄器的完整可用性。
2.夸大可重用的群组件
尽年夜多半JSP页面依附于可重用且跨平台的组件(如:JavaBeans大概EnterpriseJavaBeans)来实行使用程序所请求的更加庞大的处置。开辟职员可以共享和互换实行一般操纵的组件,大概使得这些组件为更多的利用者大概用户整体所利用。基于组件的办法减速了整体开辟历程,而且使得各类群构造在他们现有的妙技和优化了局的开辟勉力中失掉均衡。
3.接纳标识简化页面开辟
Web页面开辟职员不会都是熟习剧本言语的程序计划职员。JavaServerPage手艺封装了很多功效,这些功效是在易用的、与JSP相干的XML标识中举行静态内容发生所必要的。尺度的JSP标识可以存取和实例化JavaBeans组件,设定大概检索群组件属性,下载Applet,和实行用别的办法更难于编码和耗时的功效。经由过程开辟定制化标识库,JSP手艺是能够扩大的。从此,第三方开辟职员和别的职员能够为经常使用功效创建本人的标识库。这使得Web页面开辟职员可以利用熟习的工具和好像标识一样的实行特定功效的构件来事情。JSP手艺很简单整合到多种使用系统布局中,以使用现存的工具和技能,而且扩大到可以撑持企业级的散布式使用。作为接纳Java手艺家属的一部分,和Java2EE的一个成员,JSP手艺可以撑持高度庞大的基于Web的使用。因为JSP页面的内置剧本言语是基于Java程序计划言语的,并且一切的JSP页面都被编译成为JavaServlet,JSP页面就具有Java手艺的一切优点,包含强健的存储办理和平安性。作为Java平台的一部分,JSP具有Java程序计划言语“一次编写,遍地实行”的特性。跟着愈来愈多的供货商将JSP撑持到场到他们的产物中,您可使用本人所选择的服务器和工具,修正工具或服务器其实不影响今朝的使用。
使用局限:
ASP是Microsoft开辟的静态网页言语,也承继了微软产物的一向传统,只能实行于微软的服务器产物,IIS(InternetInformationServer)(windowsNT)和PWS(PersonalWebServer)(windows98)上。Unix下也有ChiliSoft的组件来撑持ASP,可是ASP自己的功效无限,必需经由过程ASP+COM的群组合来扩大,Unix下的COM完成起来十分坚苦。
PHP3可在Windows,Unix,Linux的Web服务器上一般实行,还撑持IIS,Apache等一样平常的Web服务器,用户改换平台时,无需变更PHP3代码,可即拿即用。
JSP同PHP3相似,几近能够实行于一切平台。如WinNT,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)。数据库测试中,三者分离对Oracle8举行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能够经由过程MicrosoftWindowsd的COM/DCOM取得ActiveX范围撑持,经由过程DCOM和TranscationServer取得布局撑持;JSP能够经由过程SUNJava的JavaClass和EJB取得范围撑持,经由过程EJB/CORBA和浩瀚厂商的ApplicationServer取得布局撑持。三者中,JSP应当是将来开展的趋向。天下上一些年夜的电子商务办理计划供应商都接纳JSP/Servlet。对照着名的如IBM的E-business,它的中心是接纳JSP/Servlet的WebSphere。它们都是经由过程CGI来供应撑持的。但客岁10月后它推出了Enfinity,一个接纳JSP/Servlet的电子商务ApplicationServer,并且声言不再开辟传统软件。
总之,ASP,PHP,JSP三者都有相称数目的撑持者,由此也能够看出三者各有所长。正在进修或利用静态页面的伴侣可依据三者的特性选择一种合适本人的言语。
转自:http://www.blog.edu.cn/more.asp?name=ntu&id=52982
</p>由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。
作者:
莫相离
时间:
2015-1-20 11:16
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。
作者:
活着的死人
时间:
2015-1-23 12:01
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
作者:
爱飞
时间:
2015-1-25 15:45
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
作者:
小女巫
时间:
2015-2-2 22:39
代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
作者:
飘飘悠悠
时间:
2015-2-8 18:51
虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。
作者:
只想知道
时间:
2015-2-25 22:38
哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
作者:
不帅
时间:
2015-3-8 08:46
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
作者:
第二个灵魂
时间:
2015-3-15 21:22
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
作者:
变相怪杰
时间:
2015-3-22 05:07
完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2