草根站长是一个网站架设的学习平台,提供最新的网站制作与网站运营等教程
网站map 会员中心 论坛
当前位置: 主页 > 网络编程 > JSP网络编程 >

JSP网络编程从基础到实践(第3版)(4)

来源:网络整理更新时间:2012-08-27 14:08点击:

1.2 B/S模式技术介绍

B/S模式下的编程技术有许多种,这里列出比较常见的几种,以供对比分析。

1.2.1 CGI

CGI(Common Gateway Interface,通用网关接口)技术的原理如图1-3所示。

 

 

 

Web

浏览器

Web

服务器

CGI

数据库

服务器

图1-3 CGI技术原理框架图

首先,客户端(即Web浏览器)根据某资源的URL(Uniform Resource Locator,统一资源定位器)向Web服务器提出请求;然后,Web服务器的HTTP Daemon(守护进程)将此请求的参数通过标准输入stdin和环境变量传递给指定的CGI程序,并启动此应用程序进行处理,如要存取数据库服务器上数据库的数据,则向数据库服务器发出处理请求,由数据库服务器将执行结果返回给CGI程序;最后,CGI程序把处理结果通过标准输出stdout返回给HTTP Daemon进程,再由HTTP Daemon进程返回给客户端,通过浏览器解析执行,将最终结果在用户面上显示。

CGI允许Web服务器运行外部应用程序,通过外部程序来访问数据库等一些外部资源,并产生HTML文档给浏览器。但每次请求CGI程序都要重新启动程序,影响了响应的速度,且CGI程序不能被多个客户请求共享,又影响了各种资源的使用效率。为了克服CGI的这些缺点,一些Web服务器厂商开发出了专用的API(Applications Program Interface,应用程序接口),这样就允许程序员编写程序来扩展服务器的功能。API相对于CGI与Web服务器的结合更加紧密,占用的资源较少,提高了运行的效率,其安全性与维护性更好。但是开发API应用程序比开发CGI应用程序复杂得多,要求程序员掌握更多的计算机软件知识,且各种API之间的兼容性不好,业界没有一个统一的标准,使得API程序只能工作在专用的Web服务器与操作系统之上。

编写CGI的程序设计语言有许多种,常用的有C、Perl、Visual C+http://book.itpub.net/tushu/book/2009/0801/+等,由于对程序员的要求较高、且编写与调试比其他的编程技术困难,故近年来在基于B/S的信息系统工程实践中很少采用。

  • 前言

  • 译序

  • 相关搜索: