1.1 动态网页技术
1.1.0 Internet
Internet是一个采用TCP/IP协议把各个国家、各个部门、各种机构的内部网络连接起来的数据通信网。 Internet传统的定义是“网络的网络”,即网络互连的意思。它将许许多多各种各样的网络通过主干网络互联在一起,而不论其网络规模的大小、主机数量的多少、地理位置的异同,这些网络使用相同的通信协议和标准,彼此之间可以通信和交换数据,并且有一套完整的编址和命令系统。这些网络的互连最终构成一个统一的、可以看成是一个整体的“大网络”。通过这种互联, Internet实现了网络资源的组合,这也是Internet的精华所在并且迅速发展的原因。
Internet是一个集各个部门、各个领域内各种信息资源为一体的信息资源网。它是一个庞大的、实用的、可享受的、全球性的信息源。Internet上有着大量的不同种类、不同性质的信息资料库,如学术信息、科技成果、产品数据、图书馆书刊目录、文学作品、新闻、天气预报,以及各种各样不同专题的电子论坛等。
Internet是一个用户的网络。Internet是一个开放管理、形式自由的网络集合,网络上的所有用户可以共享信息源,免费享用大量的软件资源;可以发送或接受电子邮件通信;可以与别人建立联系并互相索取信息;可以在网上发布公告,宣传信息;可以参加各种专题小组讨论。
在Internet中,有两种层次的网络连接:一种是互联(internetworking),指网络间物理与逻辑尤其是逻辑上的连接;另一种是互连(interconnection),指网络间物理上的连接。
1.1.1 TCP/IP通信协议
1972年出现了网核互联的核心技术TCP/IP协议,该协议包括近100个协议,但最主要的是TCP协议和IP 协议,其中TCP(Transmission Control Protocol)传送控制协议,它的作用是保证信息在网络间的可靠的传送,保证接收到的信息在传送途中不被损坏,而IP(Internet Protocol)网际网协议,保证信息从一个地方传送到另一个地方,不管中间要经过多少结点和不同的网络。IP协议是基于分组交换技术上的,它包含如下规则:
①Internet上每台计算机都有一个由四个数字组成的Internet地址,每个不超过 256,地址数码用点分开。如:202.96.101.201。
②一个信息被划分成若干个分组。
③每个分组被填入一个IP信封。
④IP信封外包含一个发送地址和一个收信地址,再加一个顺序号。
在Internet上每台主机都有专门的地址,称为IP地址,只有有了地址,信息才可以传以那里,这正如日常生活中发送邮件一样,它用的是邮编,如315010,31表示浙江省,50表示宁波市,10表示宁波市区中的一块,在Internet中,IP地址用四个数字组成, 每个数字不大于256,数字间用.分开,在计算机中IP地址是左到或译出的则最左边部分识别网络中的最大部分,如:202.96.101.202,202表示中国的网络,96 表示邮电部网络,第二个101表示宁波邮电局网络部分,202表示该网中的具体的一台机器。 每个用户的电子邮件的地址由用户名和IP地址组成,格式是: 用户名@IP地址。 如:nbclient@202.96.101.202。 由于数字很难记住,为此,Internet又提供了区域名,每个区域与IP地址对应,它的目的是更易于理解和容易记住。如:202.96.101.202,它的区域名为: pub.nb.zjpta.net.cn。区域名是由字符组成,它可以由二到八个字符串组成,每个字符串不超过8个字符,字符串之间用.分开。区域名的识别是从右边开始,右边表示最大区域,但IP地址与区域名不是每一部分都一一对应,如:202.96.101.202 pub.nb.zjpta.net.cn 中 202≠cn、 96≠net 。 IP地址与区域名的对应关系是靠叫域名服务器的计算机来识别. 则如果发电子邮件到nbclient@pub.nb.zjpta.net.cn与nbclient@202.96.101.202是一样的,在任何出现202.96.101.202的地方都可用pub.nb.zjpta.net.ch代替,反之一样. 在Internet中,经常有几个好标识的域:
- com 商业范围
- edu 教育机构
- mil 军事机构
- net 网络机构
-
org 组织
-
gov 政府部门
在Internet内部,每台单独的计算机都是一个主机,有些主机能同时支持多个用户, 也就是允许多个用户同时登录到那台主机上,这种计算机有时叫多用户主机或叫分时主机. 而终端则是,同分时主机而言的,每个终端包括一个键盘,一个屏幕(显示器),或别的输入输出设备,终端不具备处理能力,每个终端都跟一个分时主机相连,它负责接受用户输入, 把输入信息交给分时主机处理,再把主机产生的结果输出到终端上. 因为每台PC机都包含终端所必须具备的输入输出设备,即键盘和显示器,所以现在有一些终端仿真程序,可以把Pc机仿真成一个分时主机的终端.
作为Internet的一个主机肯定能访问Internet了,如果该主机是分时主机,则与该分时主机相连的终端也能访问Internet,接下来我们将介绍做为主机和做为终端访问 Internet的方法.但两者最大的区别是,主机在Internet上有一个IP地址,而终端却没有,主机能运行在他上面的软件,而终端只能运行它所相连的主机上的软件,因为终端自己没有处理能力,所以也就不能执行软件.
1.1.2浏览器(Browser)
WWW客户软件,即WWW的浏览程序。
WWW(World Wide Web),中文称为环球信息网,是一个基于Internet的、全球连接的、分布的、动态的、多平台的交互式图形、综合了信息发布技术和超文本技术的信息系统。WWW为用户提供了一个基于浏览器/服务器模型和多媒体技术的友好的图形化信息查询界面。WWW有时也称作Web。
WWW上的信息可以有多种格式,它不仅能够传输文本、目录,也能传输图像、声音和动画等多种其他信息。由于WWW把信息组织成分布式的超文本,WWW上对信息的浏览和查询变得简单和方便。一个超文本文件中包含了许多分别指向另一些信息节点(可以是文本、图像、声音和动画等)的指针,这些包含指针的地方通常称为"链接"。一个超文本链接指针由两部分组成。一是被指向的目标,它可以是同一文件的另一部分,也可以是世界另一端的一个文件;另一部分是指向目标的链接指针。超文本链接指针表现在屏幕上就是一些有别于基色的文字,或者是整个图像(或部分图像),将鼠标放在"链接"上时,鼠标指针将变为手形,用户很容易就能识别出来。只要用鼠标点击这些"链接",就能立即根据内含的指针链接到其他网络资源。用户可以不断的选择"链接",从而不断地转换阅读的信息,而无须关心阅读的信息所存放的位置,以及具备太多的计算机专业知识。由于人的思维是跳跃的、交叉的,而每一个链接指针代表了不同的思维跳跃,因此使用超文本技术组织分布式信息更加符合人类的思维方式。
WWW采用客户机/服务器(Client/Server)模式进行工作。所谓客户机/服务器模式,即用户使用被称为"客户程序"的软件,向服务器(运行有相应的"服务程序")提出请求,服务器对用户的请求做出回答后,通过客户程序告诉用户。因此,在WWW工作过程中,用户所使用的本地计算机是运行WWW客户程序的客户机,通过Internet访问分布在世界各地的WWW服务器。
用户浏览WWW上的信息需要使用Web浏览器(browser)。Web浏览器就是访问WWW服务器并对其上的资源进行浏览的WWW客户端程序。以浏览器为客户端的浏览器(Browser)/服务器(Server)模式称为B/S模式,是各类网站采用的模式。
WWW的出现,促使了Internet在世界范围内迅速发展,大大加速了全球网络化和信息化的进。至今,WWW已经形成了世界上规模最大的超文本信息资源库,并且成为最受欢迎的信息检索服务系统。
浏览器的作用
用户要访问WWW服务器,必须在本地计算机上运行WWW的客户端软件,即浏览器。在Web的Client/Server工作环境中,Web浏览器起着控制的作用。浏览器的任务是使用一个起始URL来获取一个Web服务器上的Web文档。即:浏览器将用户的请求送到要访问的WWW服务器上,WWW服务器上运行的WWW服务程序在收到请求后,把用户指定访问的资源文件(HTML格式)通过HTTP协议传送回浏览器,经浏览器解释后,将文档的内容以用户环境所许可的效果最大限度地显示在浏览器窗口中。当用户选择一个超文本链接时,这个过程又重新开始——Web浏览器通过超文本链接相连的URL来请求获取文档,等待服务器发送文档,处理这个文档并显示出来。
浏览器的功能
大多数的浏览器除了可以采用HTTP协议访问WWW服务器外,还具备访问Internet上其他服务器的功能。如采用FTP协议访问FTP服务器、采用Gopher协议与Gopher服务器进行信息交互等。
对于可以直接处理的文件,浏览器将直接显示在浏览窗口中;而对于无法直接处理的特殊类型的文档,有的浏览器还可以自动调用其他应用程序来处理。
1972年出现了网核互联的核心技术TCP/IP协议,该协议包括近100个协议,但最主要的是TCP协议和IP 协议,其中TCP(Transmission Control Protocol)传送控制协议,它的作用是保证信息在网络间的可靠的传送,保证接收到的信息在传送途中不被损坏,而IP(Internet Protocol)网际网协议,保证信息从一个地方传送到另一个地方,不管中间要经过多少结点和不同的网络。IP协议是基于分组交换技术上的,它包含如下规则:
①Internet上每台计算机都有一个由四个数字组成的Internet地址,每个不超过 256,地址数码用点分开。如:202.96.101.201。
②一个信息被划分成若干个分组。
③每个分组被填入一个IP信封。
④IP信封外包含一个发送地址和一个收信地址,再加一个顺序号。
1.1.3 HTML语言
超文本标记语言HTML(Hyper Text Markup Language)是一种专门用于描述、建立存储在WWW服务器上的超文本文件的编程语言。HTML文本是由HTML命令组成的描述型文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等对象。HTML必须有特定的程序即Web浏览器翻译和执行。可以使用任何编辑器对HTML文件进行编辑。一些浏览器(如Netscape、Internet Explorer)提供了交互式的HTML编辑器。
超文本传输协议(HTTP)
HTTP(Hyper Text Transfer Protocol)协议用于将WWW服务器上的文档传送给浏览器。
我们透过浏览器所看到的网站,是由HTML(HyperText Markup Language)语言所构成。HTML( 超文件标记语言 )是一种建立网页文件的语言,透过标记式的指令(Tag),将影像、声音、图片、文字等链接显示出来。HTML网页文件可以由任何文本编辑器或专用网页编辑器编辑,编辑完毕HTML文件将以 .htm 或 .html作为文件后缀保存。
在了解HTML文件的结构以前,首先要清楚浏览器是如何处理页面的。当我们在URL上发出访问某个页面的请求后,浏览器把该请求送到页面所在的服务器,服务器根据用户指定的路径,把用户要访问的页面所对应的HTML文件通过HTTP协议传送给客户端的浏览器,浏览器将会根据在HTML文件中读到的标记式指令,对该HTML文件进行解释执行,而不是象PASCAL或C语言那样需要进行编译后才能执行,解释的结果就是把整个页面显示在浏览器窗口中。
HTML标记是由 "<" 和 ">" 所括住的指令。主要分为: |
(1) |
单标记指令 (由< 标记指令 >构成),如:〈p> |
(2) |
双标记指令 (由 < 起始标记 > < / 结束标记 >构成),如:<font> </font> |
HTML文件基本架构
<HTML> 文件开始 |
<HEAD> 标头区开始 |
<TITLE> ... </TITLE> 标题区 |
</HEAD> 标头区结束 |
|
<BODY> 本文区开始 |
本文区内容 |
</BODY> 本文区结束 |
</HTML> 文件结束 |
其中:
<HTML> : |
通常在此定义网页的文件格式; |
<HEAD> : |
标头区,记录文件基本资料,如作者、编写时间等信息。 |
<TITLE>: |
标题区,须使用在标头区内,定义浏览该HTML文件时在浏览器窗口的标题栏上显示的标题。 |
<BODY> : |
本文区,文件内容,即在浏览器中浏览该HTML文件时在浏览器窗口中显示的内容。 |
例如: |
<HTML> |
|
<HEAD> |
|
<TITLE>欢迎</TITLE> |
|
</HEAD> |
|
<BODY background="background.gif"> |
|
<p>欢迎大家的到来。 |
|
</BODY> |
|
</HTML> |
|
1.1.4 动态网页
稍为对网络有点熟悉的人都知道,HTML是编制网页的基本语言,但它只能用于静态的网页。当今的Web已经不再是早期的静态信息发布平台,它已被赋以更丰富的内涵。现在,我们不仅需要Web提供所需的信息,还需要提供可个性化搜索的功能,可以收发email,可以进行网上销售,可以从事电子商务等等。为实现以上功能必须使用更新的网络编程技术制作动态网页。所谓动态,指的是,按照访问者的不同需要,对访问者输入的信息作出不同的响应,提供响应的信息。
动态网页的特点是:
1)交互性
2)自动更新
3)因时因人而变
值得注意的是,动态网页不是指动感强的网页,一个静态网页,不管它有多少动画,动感多么好,都不是动态网页。
动态网页技术的原理是:使用不同技术编写的动态页面保存在WEB服务器内,当客户端用户向WEB服务器发出访问动态页面的请求时,WEB服务器将根据用户所访问页面的后缀名确定该页面所使用的网络编程技术,然后把该页面提交给相应的解释引擎;解释引擎扫描整个页面找到特定的定界符,并执行位于定界符内的脚本代码以实现不同的功能,如访问数据库,发送电子邮件,执行算术或逻辑运算等,最后把执行结果返回WEB服务器;最终,WEB服务器把解释引擎的执行结果连同页面上的HTML内容以及各种客户端脚本一同传送到客户端。虽然,客户端用户所接收到的页面与传统页面并没有任何区别,但是,实际上页面内容已经经过了服务端处理,完成了动态的个性化设置。目前实现动态网页主要有以下4种技术。
1.1.5 CGI
CGI ---Common Gateway Interface,公用网关接口。它可以称之为一种机制。因此你可以使用不同的程序编写适合的CGI程序,如Visual Basic、Delphi或C/C++等,你将已经写好的程序放在WEB服务器的计算机上运行,再将其运行结果通过WEB服务器传输到客户端的浏览器上。我们通过CGI建立WEB页面与脚本程序之间的联系,并且可以利用脚本程序来处理访问者输入的信息并据此作出响应。事实上,这样的编制方式比较困难而且效率低下,因为你每一次修改程序都必须重新将CGI程序编译成可执行文件。
最常用于编写CGI技术的语言是Perl(Practical Extraction and Report Language,文字分析报告语言),它具有强大的字符串处理能力,特别适合用于分割处理客户端Form提交的数据串;用它来编写的程序后缀为.pl。
我们来看个简单的例子hello.pl:
#!/usr/bin/perl
$Hello="Hello,CGI"; #字符串变量;
$Time=2;
print $Hello," for the",$Time,"nd time!","\n"; #输出一句话;
# End hello.pl
输出结果:
Hello,CGI for the 2nd time!
程序中第一个注释行具有特殊的含义,它是UNIX系统中shell的一条指令,表示在命令行上运行其后的命令。第一行是必需的,/usr/bin/perl提供了Perl解释器的完整路径名。例中的井号(#)为Perl语言中的注释字符。Perl技术参考站点:http://www.perl.com。
CGI调用数据库需要安装DBI----DataBase Interface,即数据库接口技术。DBI提供了基于Perl的标准界面连接到各种不同的SQL引擎上。各种数据库的DBI模块可在此找到:http://www.perl.com/CPAN-local/modules/by-module/DBI/。以下是连接ORACLE数据库的一个例子:
use DBI; #调用DBI;
#以下三项是数据库名,调用数据库的用户名,密码;
$dbname="dbi:Oracle:DBName";
$user="user";
$pass="pass";
#联系数据库;
$dbh=DBI->connect($dbname,$user,$pss) || die "Error Connecting to database \n";
#数据库查询;
$tag=$dbh->prepare("SELECT * FROM 表名");
$tag->execute; #执行查询;
die "Error:$DBI::err\n" if DBI::err; #出错判断;
my($col1,$col2); #定义只在本程序中(用my来表示)有效的两个变量;
while(($col1,$col2)=$tag->fetchrow) {
print "Column 1:$col1\n";
print "Column 2:$col2\n";
}
$dbh->disconnect or warn "Disconnection failed \n"; #断开与数据库的连接;
CGI技术已经发展的很成熟了,功能强大,例如SINA,NETEASE,SOHU等网站的搜索引擎,用的就是CGI技术。
相关推荐
这份名为《Servlet Jsp 技术概述》的PDF文档很可能是对这两种技术的基础介绍和实践指南,包含有相关的代码示例。 Servlet是Java平台上的一个标准接口,允许Java类响应来自Web客户端(如浏览器)的请求。它们是...
总的来说,Marty Hall的《Servlet&JSP技术概述》是一本全面介绍Servlet和JSP的教材,适合初学者入门和进阶者深化理解。通过阅读和实践书中的示例,读者可以掌握这些技术,进而开发出高效、稳定、可扩展的Java Web...
Jsp技术概述和jsp页面中的JavaBean组件参照 Jsp技术概述 Jsp技术可以让我们轻松地创建静态及动态的网络内容。Jsp技术设计了所有Java Servlet技术的动态能力,而且还提供了更自然的途径创建静态内容。Jsp主要特点...
【JSP常用开发技术概述】 JSP(Java Server Pages)是一种动态网页开发技术,它结合了HTML、CSS、JavaScript等客户端技术与Java语言的服务器端处理能力,是Java应用开发体系中的重要组成部分,尤其在企业级应用开发...
在本概述中,我们将深入探讨这两个技术的概念、工作原理以及它们如何协同工作。 Servlet是Java编程语言的一个接口,用于扩展服务器的功能。它允许开发者创建能够处理HTTP请求并生成响应的Java程序。Servlet在服务器...
**Java Web开发中的JSP技术概述** Java Server Pages(JSP)是Java平台上的一个标准技术,用于构建动态Web应用程序。它将HTML代码与Java代码分离,使得开发者可以在不干扰页面设计的情况下处理业务逻辑和数据操作。...
JSP技术概述和基础语法.mp4
学习Servlet和JSP技术,需要理解HTTP协议、Java基础和面向对象编程。随着Spring框架的普及,现在更多地使用Spring MVC进行Web开发,但Servlet和JSP仍然是理解Web应用程序工作原理的基础。通过阅读提供的源码,可以更...
本资源包提供了一个关于Servlet和JSP技术的概述,包括可能的源代码示例,便于学习者深入理解这两项技术。 Servlet是Java平台上的一个服务器端组件,它扩展了Web服务器的功能,允许开发者用Java编写能够处理HTTP请求...
Servlet与JSP是Java在Web开发中的两大核心技术,它们主要用于构建动态网页。本讲义将对Servlet和JSP进行概述,帮助你理解这两者的基本概念、工作原理以及如何在实际项目中应用。 ## 1. Servlet概述 Servlet是Java...
#### 一、JSP技术概述 JSP(Java Server Pages)是一种由Sun Microsystems(现已被Oracle收购)开发的用于构建动态Web应用程序的技术。它以简单易学且具有良好的跨平台特性而著称,在众多动态Web应用程序设计语言中...
**JSP技术概述** JSP技术提供了一种简单快速的方法来生成动态的Web页面内容。它允许开发者使用HTML或XML来设计和格式化最终页面,并通过JSP指令或脚本来生成页面上的动态内容。这种将生成和显示内容分离的设计理念,...
#### JSP技术概述 JSP(JavaServer Pages)是一种由Sun Microsystems在1999年推出的技术,用于构建动态网页。它基于Java Servlet和整个Java体系,使得开发者能够创建高度交互性的Web应用程序。JSP技术的主要优势...
【Servlet和JSP技术概述】 Servlet和JSP(JavaServer Pages)是Java平台上的两种核心技术,主要用于构建动态Web应用程序。它们在Web开发中的角色至关重要,尤其在处理客户端请求和生成响应方面。以下是对Servlet和...
- **JSP技术概述**:介绍JSP技术的发展历程、特点及优势。 - **JSP技术特征**:详细讲解JSP与其他Web开发技术的区别,如Servlet、PHP等。 - **JSP的处理过程**:解析JSP文件如何被转换成Servlet并执行。 - **JSP...