ASP全名Active server pags (动态伺服器主页),内含于Internet Information Server(IIS)当中,提供一个伺服器端的scripting环境,站点伺服器会自动将你设计的Active Server Pages 的程式码解释为标準HTML格式的主页内容,在用户端的浏览器上显示出来。
基本介绍
- 中文名:动态网页语言
- 外文名:Active server pags
- 性质:伺服器端的scripting环境
- 作用:在用户端的浏览器上显示出来
简介
动态网页语言是指编写动态网页相关程式的计算机高级语言。目前,最常用的动态网页语言有ASP(Active Server Pages),JSP(Java Server Pages),PHP (Hypertext Preprocessor)。
什幺是动态网页?
动态网页是与静态网页相对应的,也就是说,网页 URL的后缀不是.htm、.html、.shtml、.xml等静态网页的常见形动态网页製作专家式,而是以.aspx、.asp、.jsp、.php、.perl、.cgi等形式为后缀,并且在动态网页网址中有一个标誌性的符号——“?”。
ASP
用户端只要使用常规可执行HTML码的浏览器,即可浏览。 ASP无须Compile 编译或Link 连结即可执行。集成于HTML中,使用常规文本编辑器。并与浏览器无关,用户端只要使用常规的可执行HTML码的浏览器即可浏览。Script 语言(Vbscript ,Jscript)是在站点伺服器执行,用户不需要执行这些Script语言。它还可通过ActiveX伺服器组件来扩充功能,ActiveX Server component可使用VB、Java、 C++、COBOL等语言来实现。 此外,Active Server Pages与任何AcTiveX scripting 语言兼容。除了可使用VBscript 或JScript语言来设计,还可通过Plug-in的方式,使用由third party所提供的其他scripting语言。它的源程式代码不会传到用户的浏览器,可以保护源程式。传到用户浏览器的是Active ServerPages执行结果的常规HTML码。
PHP
PHP是一种跨平台的伺服器端的嵌入式脚本语言。它大量地借用C、Java和Perl语言的语法, 并耦合PHP自己的特性,使WEB开发者能够快速地写出动态生成页面。它支持目前绝大多数资料库。PHP是完全免费的,你可以自由下载。甚至可以不受限制地获得源码,从而加进你自己需要的特色。 PHP可以编译成具有与许多资料库相连线的函式。PHP与MySQL是绝佳的组合。你还可以自己编写外围的函式间接存取资料库,而当你更换使用的资料库时,可以轻鬆地更改编码以适应这样的变化。PHPLIB就是最常用的可以提供一般事务需要的一系列基库。但PHP提供的资料库接口支持不统一,比如对Oracle、 MySQL、Sybase的接口,彼此都不一样。这也是PHP的一个弱点。
JSP
JSP 是Sun公司推出的新一代站点开发语言,他完全解决了目前ASP、PHP的一个通病——脚本级执行(据说PHP4 也已经在Zend 的支持下,实现编译运行)。Jsp 可以在Serverlet和JavaBean的支持下,完成功能强大的站点程式。 JSP的最大特点是将内容的生成和显示进行分离。使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在伺服器端运行。如果核心逻辑被封装在标识和Beans中,那幺其他人,如Web管理人员和页面设计者能够编辑和使用JSP页面,而不影响内容的生成。 在伺服器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问资料库,或者包含档案),并且将结果以HTML(或者XML)页面的形式传送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。 Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标準的JSP标识能够访问和实例化JavaBeans组件,设定或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。 通过开发定製化标识库,JSP技术是可以扩展的。技术人员可以为常用功能创建自己的标识库,这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。 JSP技术很容易整合到多种套用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分散式套用。 由于JSP页面的内置脚本语言是基于Java程式语言的,拥有Java程式语言“一次编写,各处运行”的特点,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。
语言特点
在各自的套用範围中,ASP只能运行于微软的伺服器产品上。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。虽然现在NT作业系统占了很大的市场份额,但是在伺服器方面Unix的优势仍然很大,而新崛起的Linux更是来势不小。从一个平台移植到另外一个平台,JSP和JavaBean甚至不用重新编译,因为Java位元组码都是标準的和与平台无关的。
语言比较
在性能比较上曾有人做过试验,对这三种语言分别做循环性能测试及存取Oracle资料库测试。无论是在循环性能测试中,还是在资料库测试中,JSP都是最快的。 目前在国内PHP与ASP套用最为广泛。但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多採用JSP。 採用PHP的网站如新浪网(sina)、中国人(Chinaren)等,但由于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。但ASP,PHP,JSP三者其实各有所长。正在学习或使用动态页面的网友们选择一种适合自己的语言。