JS、JSP、ASP、CGI

   1)JS是在客户端执行的,须要浏览器支持Javascript。JSP是在服务器端执行的,须要服务器上部署支持Servlet的服务器程序。JS代码是可以直接从服务器上download获得,对外是可见的,jsp(和翻译后的servlet)代码是对外不可见的。javascript

  2)JS与JavaScript相比:虽然JavaScript能够在客户端动态生成HTML,可是很难与服务器交互,所以不能提供复杂的服务,好比访问数据库和图像处理等等。JSP在HTML中用<%%>里面实现。JS在html中用<Script></Script>实现。php

1、html

JavaScript 是 Web 的编程语言。全部现代的 HTML 页面都使用 JavaScript。JavaScript是一种属于网络的脚本语言,已经被普遍用于Web应用开发,经常使用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。一般JavaScript脚本是经过嵌入在HTML中来实现自身的功能的。java

HTML 中的脚本必须位于 <script> 与 </script> 标签之间。脚本可被放置在 HTML 页面的 <body> 和 <head> 部分中。mysql

JS实例:程序员

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>菜鸟教程(runoob.com)</title> 
</head>
<body>
	
<h1>个人第一个 Web 页面</h1>
<p id="demo">个人第一个段落。</p>
<script>
document.getElementById("demo").innerHTML="段落已修改。";
</script>
	
</body>
</html>

2、web

JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计。sql

JSP 与 PHP、ASP、ASP.NET 等语言相似,运行在服务端的语言。数据库

JSP(全称Java Server Pages)是由 Sun Microsystems 公司倡导和许多公司参与共同建立的一种使软件开发者能够响应客户端请求,而动态生成 HTML、XML 或其余格式文档的Web网页的技术标准。JSP 技术是以 Java 语言做为脚本语言的,JSP 网页为整个服务器端的 Java 库单元提供了一个接口来服务于HTTP的应用程序。apache

JSP文件后缀名为 *.jsp 。JSP开发的WEB应用能够跨平台使用,既能够运行在 Linux 上也能运行在 Windows 上。

Jsp实例:

<%@ page contentType="text/html;charset=UTF-8" %>  
<html>  
   
 <%  
    session.setAttribute("Login", "");  
 %>  
  
 <body>  
  <h2>你已经退出登陆</h2>  
 </body>  
  
</html>

  

3、 

ASP(Active Server Pages 动态服务器页面)是一种生成动态交互性网页的强有力工具。

工做原理:

  ASP中的脚本程序是在服务器端运行的(而不是在客户端运行),传送到浏览器上的web页是在web服务器上生成的。所以,客户端浏览器并无处理这些脚本,web服务器已经完成了这些脚本的处理,并将标准的HTML页面传输到浏览器。ASP解释器读取并执行全部在<%和%>标签之间的脚本代码,并生成内容。因为只有脚本的执行结果返回到浏览器,所以,用户看不到正在浏览的网页的脚本命令,而只能看到脚本的执行结果。

ASP实例:

<!DOCTYPE html>
<html>
<body>
<%
response.write("<h2>You can use HTML tags to format the text!</h2>")
%>

<%
response.write("<p style='color:#0000ff'>This text is styled with the style attribute!</p>")
%>
</body>
</html>

  

  

ps:

一、jsp的魅力无疑是java的跨平台性。它诞生于面向对象编程的环境下
二、提到迅速的商务部署,固然是windows环境的asp技高一筹了,微软的东西傻瓜性够好、资源丰富(asp程序员工资低因而可知一斑)。开发周期绝对少于java的jsp

三、php做为一门语言(好像asp开发的主流语言vbscript和jsp开发的java),它是绝对免费的,也因为此,它不够健壮(这一点的另外一方面就是它的速度某种程度上比较快)。它具备比较好的平台无关性,但并非绝对的。从php开始支持windows环境的com组件能够看出它的某些无奈。php目前已经支持面向对象编程。比较小的商务应用采用php+mysql仍是颇有竞争力的

另外,asp有微软支持,目前很流行
php一直很受关注,其程序性能强大,LAMP(Linux+Apache+Mysql+Php)被称为黄金组合
jsp好像不如前二者流行,但也有不少用户,其技术基于java,前途好像也不错
Asp.net是微软.Net套件的一个部分,应该是趋势

动态网页技术所谓“动态”,并非指那几个放在网页上的GIF图片,动态网页技术有如下几个特色。1,"交互性"即网页会根据用户的要求和选择而动态改变和响应,将浏览器做为客户端界面,这将是从此WEB发展的大事所趋.2,"自动更新"即无须手动地更新HTML文档,便会自动生成新的页面,能够大大节省工做量.3,"因时因人而变",即当不一样的时间,不一样的人访问同一网址时会产生不一样的页面。除了早期的CGI外,目前主流的动态网页技术有JSP,ASP,PHP等1.1. 1CGI  在早期,动态网页技术主要采用CGI技术,即Common Gateway Interface(公用网关接口)。在早期,你可使用不一样的程序编写合适的CGI程序,如Visual Basic,Delphi或C/C++等。虽然CGI技术成熟并且功能强大,但因为编程困难,效率低下,修改复杂等缺陷,因此有逐渐被新技术取代的趋势。可使用不一样的程序编写合适的CGI程序,如Visual Basic、Delphi或C/C++等,您将已经写好的程序放在WEB服务器的计算机上运行,再将其运行结果经过WEB服务器传输到客户端的浏览器上。咱们经过CGI创建WEB页面与脚本程序之间的联系,而且能够利用脚本程序来处理访问者输入的信息并据此做出响应。事实上,这样的编制方式比较困难并且效率低下,由于你每一次修改程序都必须从新将CGI程序编译成可执行文件。   最经常使用于编写CGI技术的语言是Perl(Practical Extraction and Report Language,文字分析报告语言),它具备强大的字符串处理能力,特别适合用于分割处理客户端Form提交的数据串;用它来编写的程序后缀为.pl。1.1. 2ASP  ASP更精确的说是一个中间件,这个中间件将Web上的请求转入到一个解释器中,在这个解释器中将全部的ASP的Script进行分析,再进行执行,而这时能够在这个中间件中去建立一个新的COM对象,对这个对象中的属性和方法进行操做和调用,同时再经过这些COM组件再完成更多的工做。因此说,ASP强大的不在于它的VBScript, 而在于它后台的COM组件,这些组件来无限的扩充了ASP的能力。强势:1简单易学。Basic有谁不会?不多会有人举手,因此有人在说这个开发基础是最广的。并且MS有一贯作的很是好的联机手册,本地化语言的帮助,同时很是快的出现教学书籍,这样会大大方便开发人员的学习和对技术的深刻研究。 二、安装使用方便。装好一个Windows 2000,只要你安装了IIS哪么ASP就可使用了,从没有什么须要你花心思去配置的。三、开发工具强大而多样。这个我不用说了,能够说的就是我之前使用VB中的Web Class开发出的Web应用一点不差,当时让许多人大吃一惊,VB也能作ASP上的应用!!!其实这正说明了ASP开发工具的多样化,同时它们的功能也很强,这一点已经被许多程序员所津津乐道。易用、简单、人性化,这本就是微软的强项哟。 四、效率高。在低的访问量下,ASP能体现出必定的效率,这时它对机器的要求并不高。弱势:1Windows自己的全部问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性(Win2K已经再也不支持Alpha了)都会由于与NT的捆绑而显现出来。二、ASP因为使用了COM组件因此它会变的十分强大,可是这样的强大因为Windows NT系统最初的设计问题而会引起大量的安全问题。只要在这样的组件或是操做中一不注意,哪么外部攻击就能够取得至关高的权限而致使网站瘫痪或者数据丢失。 三、因为ASP仍是一种Script语言,因此除了大量使用组件外,没有办法提升其工做效率。它必须面对即时编译的时间考验,同时咱们还不知其背后的组件会是一个什么样的情况。四、没法实现跨操做系统的应用。固然这也是微软的理由之一,只有这样才能发挥ASP最佳的能力。但是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的。五、还没法彻底实现一些企业级的功能:彻底的集群、负载均衡。1.1.3 PHPPHP(Hypertext Preprocessor)是一种HTML内嵌式的语言(相似于IIS上的ASP)。而PHP独特的语法混合了C、Java、Perl以及PHP式的新语法。它能够比CGI或者Perl更快速的执行动态网页。PHP可以支持诸多数据库,如MS SQL Server, MySql,Sybase,Oracle等。它与HTML语言具备很是好的兼容性,使用者能够直接在脚本代码中加入HTML标签,或者在HTML标签中加入脚本代码从而更好地实现页面控制。PHP提供了标准的数据库接口,数据库链接方便,兼容性强;扩展性强;能够进行面向对象编程。1 PHP的强势1.一种能快速学习、跨平台、有良好数据库交互能力的开发语言。ASP比不上它的就是这种跨平台能力了,而正是它的这种能力让Unix/Linux有了一种与ASP媲美的开发语言。语法简单、书写容易、如今市面上也有了大量的书,同时Internet上也有大量的代码能够共享,对于一个初学者想学些“高深的Unix”下的开发来讲是一个决好的入手点。 2.与Apache及其它扩展库结合紧密。php与Apache能够以静态编绎的方式结合起来,而与其它的扩展库也能够用这样的方式结合(除外的就是Windows平台了)。这样的方式的最大的好处就是最大化的利用了cpu时和内存,同时极为有效的利用了apache的高性能的吞吐能力。同时外部的扩展也是静态连编,从而达到了最快的运行速度。因为与数据库的接口也使用了这样的方式,因此使用的是本地化的调用,这也让数据库发挥了最佳效能。3.良好的安全性。因为php自己的代码开放因此它的代码在许多工程师手中进行了检测,同时它与apache编绎在一块儿的方式也可让它具备灵活的安全设定。因此到如今为止,php具备了公认的安全性能。弱势: 1. 据库支持的极大变化。因为php的全部的扩展接口都是独立团队开发完成的,同时在开发时为了造成相应数据的个性化操做,因此php虽然支持许多数据库,但是针对每种数据库的开发语言都彻底不一样。这样造成针对一种数据库的工发工做,在数据库进行升级后须要开发人员进行几乎所有的代码更改工做。而为了让应用支持更多种的数据库,就须要开发人员将一样的数据库操做使用不一样的代码写出n种代码库出来,让程序员的工做量大大增大。2. 安装复杂。因为php的每一种扩充模块并非彻底由php自己来完成,须要许多外部的应用库,如图形须要gd库、LDAP须要LDAP库.……这样在安装完成相应的应用后,再联编进php中来。这也就是我之前在代码联盟新闻组中对网友所说的必定要在FreeBSD/Linux/Unix下运行php的缘由。只有在这些环境下才能方便的编绎对应的扩展库。这些都是通常开发人员在使用php前所先要面对的问题,正是这样的问题让许多开发人员转而使用其它的开发语言,必竟Unix没有那么多的用户。3. 缺乏企业级的支持。没有组件的支持,哪么全部的扩充就只能依靠php开发组所给出的接口,事实上这样的接口还不够多。同时难以将集群、应用服务器这样的特性加入到系统中去。而一个大型的站点或是一个企业级的应用必定须要这样的支持的。注:在php的4.0版本之后加入了对servlet/javabean的支持,也许这样的支持会在之后的版本中更加加强,也许这样的支持会是php之后的企业级支持的起点。4. 缺乏正规的商业支持。这也是自由软件一贯的缺点,我想在国内php的开发人员正在快速增长,相信在不久的未来,这样的支持能多起来。5. 没法实现商品化应用的开发。因为php没有任何编绎性的开发工做,全部的开发都是基于脚本技术来完成的。因此全部的源代码都没法编译,因此作完成的应用只能是本身或是内部使用,没法实现商品化。1.1.4 JSP  JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求之后对这些Java代码进行处理,而后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,并且大型的Web应用程序的开发须要Java Servlet和JSP配合才能完成。JSP具有了Java技术的简单易用,彻底的面向对象,具备平台无关性且安全可靠,主要面向Internet的全部特色。1. SP技术的强势(1)一次编写,处处运行。在这一点上Java比PHP更出色,除了系统以外,代码不用作任何更改(2)系统的多平台支持。基本上能够在全部平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是现而易见的。(3)强大的可伸缩性。从只有一个小的Jar文件就能够运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多很是优秀的开发工具,并且许多能够免费获得,而且其中许多已经能够顺利的运行于多种平台之下。2. JSP技术的弱势(1) 与ASP同样,Java的一些优点正是它致命的问题所在。正是因为为了跨平台的功能,为了极度的伸缩能力,因此极大的增长了产品的复杂性。(2) Java的运行速度是用class常驻内存来完成的,因此它在一些状况下所使用的内存比起用户数量来讲确实是“最低性能价格比”了。从另外一方面,它还须要硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件。
相关文章
相关标签/搜索