简要说明超文本系统的体系结构

html-css07

简要说明超文本系统的体系结构,第1张

 一、超文本(hypertext)

一种全局性的信息结构,它将文档中的不同部分通过关键字建立链接,使信息得以用交互方式搜索。它是超级文本的简称。

二、超媒体(hypermedia)

超媒体是超文本(hypertext)和多媒体在信息浏览环境下的结合。它是超级媒体的简称。用户不仅能从一个文本跳到另一个文本,而且可以激活一段声音,显示一个图形,甚至可以播放一段动画。

Internet采用超文本和超媒体的信息组织方式,将信息的链接扩展到整个Internet上。Web就是一种超文本信息系统,Web的一个主要的概念就是超文本连接,它使得文本不再象一本书一样是固定的线性的。而是可以从一个位置跳到另外的位置。可以从中获取更多的信息。可以转到别的主题上。想要了解某一个主题的内容只要在这个主题上点一下,就可以跳转到包含这一主题的文档上。正是这种多连接性把它称为Web。

三、超文本传输协议(HTTP)

Hypertext Transfer Protocol超文本在互联网上的传输协议。

当你想进入万维网上一个网页, 或者其他网络资源的时候,通常你要首先在你的浏览器上键入你想访问网页的统一资源定位符(UniformResourceLocator),或者通过超链接方式链接到那个网页或网络资源。这之后的工作首先是URL的服务器名部分,被名为域名系统的分布于全球的因特网数据库解析,并根据解析结果决定进入哪一个IP地址(IP address)。

接下来的步骤是为所要访问的网页,向在那个IP地址工作的服务器发送一个HTTP请求。在通常情况下,HTML文本、图片和构成该网页的一切其他文件很快会被逐一请求并发送回用户。

网络浏览器接下来的工作是把HTML、CSS和其他接受到的文件所描述的内容,加上图像、链接和其他必须的资源,显示给用户。这些就构成了你所看到的“网页”。

大多数的网页自身包含有超链接指向其他相关网页,可能还有下载、源文献、定义和其他网络资源。像这样通过超链接,把有用的相关资源组织在一起的集合,就形成了一个所谓的信息的“网”。这个网在因特网上被方便使用,就构成了最早在1990年代初蒂姆·伯纳斯-李所说的万维网。

传统的Web数据库系统体系结构传统的Web数据库系统一般实现Web数据库系统的连接和应用可采取两种方法,一种是在Web服务器端提供中间件来连接Web服务器和数据库服务器,另一种是把应用程序下载到客户端并在客户端直接访问数据库。中间件负责管理Web服务器和数据库服务器之间的通信并提供应用程序服务,它能够直接调用外部程序或脚本代码来访问数据库,因此可以提供与数据库相关的动态HTML页面,或执行用户查询,并将查询结果格式化成HTML页面。通过Web服务器返回给Web浏览器。最基本的中间件技术有通过网关接口CGI和应用程序接口API两种。

(一)、基于通用网关接口CGI

CGI是WWW服务器运行时外部程序的规范,按照CGI编写的程序可以扩展服务器的功能,完成服务器本身不能完成的工作,外部程序执行时间可以生成HTML文档,并将文档返回WWW服务器。CGI应用程序能够与浏览器进行交互作用,还可以通过数据库的API与数据库服务器等外部数据源进行通信,如一个CGI程序可以从数据库服务器中获取数据,然后格式化为HTML文档后发送给浏览器,也可以将从浏览器获得的数据放到数据库中。几乎使用的服务器软件都支持CGI,开发人员可以使用任何一种WWW服务器内置语言编写CGI,其中包括流行的C、C、VB和Delphi等。

从体系结构上来看,用户通过Web浏览器输入查询信息,浏览器通过HTTP协议向Web服务器发出带有查询信息的请求,Web服务器按照CGI协议激活外部CGI程序,由该程序向DBMS发出SQL请求并将结果转化为HTML后返回给Web服务器。再由Web服务器返回给Web浏览器。这种结构体现了客户/服务器方式的三层模型,其中Web服务器和CGI程序实际起到了HTML和SQL转换的网关的作用。CGI的典型操作过程是:分析CGI数据;打开与DBMS的连接;发送SQL请求并得到结果;将结果转化为HTML;关闭DBMS的连接;将HTML结果返回给Web服务器。

基于Web的数据库访问利用已有的信息资源和服务器。其访问频率大,尤其是热点数据。但其主要的缺点是:①客户端与后端数据库服务器通信必须通过Web服务器,且Web服务器要进行数据与HTML文档的互相转换,当多个用户同时发出请求时,必然在Web服务器形成信息和发布瓶颈。②CGI应用程序每次运行都需打开和关闭数据库连接,效率低,操作费时;③CGI应用程序不能由多个客户机请求共享,即使新请求到来时CGI程序正在运行,也会启动另一个CGI应用程序,随着并行请求的数量增加,服务器上将生成越来越多的进程。为每个请求都生成进程既费时又需要大量内存,影响了资源的使用效率,导致性能降低并增加等待时间;④由于SQL与HTML差异很大,CGI程序中的转换代码编写繁琐,维护困难;⑤安全性差,缺少用户访问控制,对数据库难以设置安全访问权限;⑥HTTP协议是无状态且没有常连接的协议,DBMS事务的提交与否无法得到验证,不能构造Web上的OLTP应用。

(二)、基于服务器扩展的API

为了克服CGI的局限性,出现的另一种中间件解决方案是基于服务器扩展API的结构。与CGI相比,API应用程序与Web服务器结合得更加紧密,占用的系统资源也少得多,而运行效率却大大提高,同时还提供更好的保护和安全性。

服务器API一般作为一个DLL提供,是驻留在WWW服务器中的程序代码,其扩展WWW服务器的功能与CGI相同。WWW开发人员不仅可以API解决CGI可以解决的一切问题,而且能够进一步解决基于不同WWW应用程序的特殊请求。各种API与其相应的WWW服务器紧密结合,其初始开发目标服务器的运行性能进一步发掘、提高。用API开发的程序比用CGI开发的程序在性能上提高了很多,但开发API程序比开发CGI程序要复杂得多。API应用程序需要一些编程方面的专门知识,如多线程、进程同步、直接协议编程以及错误处理等。目前主要的WWWAPI有Microsoft公司的ISAPI、Netscape公司的NSAPI和OReily公司的WSAPI等。使用ISPAI开发的程序性能要优于用CGI开发的程序,这主要是因为ISAPI应用程序是一些与WWW服务器软件处于同一地址空间的DLL,因此所有的HTTP服务器进程能够直接利用各种资源这显然比调用不在同一地址空间的CGI程序语句要占用更少的系统时间。而NSAPI同ISAPI一样,给WWW开发人员定制了NetscapeWWW服务器基本服务的功能。开发人员利用NSAPI可以开发与WWW服务器的接口,以及与数据库服务器等外部资源的接口。

虽然基于服务器扩展API的结构可以方便、灵活地实现各种功能,连接所有支持32位ODBC的数据库系统,但这种结构的缺陷也是明显的:①各种API之间兼容性很差,缺乏统一的标准来管理这些接口;②开发API应用程序也要比开发CGI应用复杂得多; ③这些API只能工作在专用Web服务器和操作系统上。

(三)、基于JDBC的Web数据库技术

Java的推出,使WWW页面有了活力和动感。Internet用户可以从WWW服务器上下载Java小程序到本地浏览器运行。这些下载的小程序就像本地程序一样,可独立地访问本地和其他服务器资源。而最初的Java语言并没有数据库访问的功能,随着应用的深入,要求Java提供数据库访问功能的呼声越来越高。为了防止出现对Java在数据库访问方面各不相同的扩展,JavaSoft公司指定了JDBC,作为Java语言的数据库访问API。

采用JDBC技术,在JavaApplet中访问数据库的优点在于:直接访问数据库,不再需要Web数据库的介入,从而避开了CGI方法的一些局限性;用户访问控制可以由数据库服务器本地的安全机制来解决,提高了安全性;JDBC是支持基本SQL功能的一个通用低层的应用程序接口,在不同的数据库功能的层次上提供了一个统一的用户界面,为跨平台跨数据库系统进行直接的Web访问提供了方案。从而克服了API方法一些缺陷;同时,可以方便地实现与用户地交互,提供丰富的图形功能和声音、视频等多媒体信息功能。

JDBC是用于执行SQL语句的Java应用程序接口API,由Java语言编写的类和接口组成。Java是一种面向对象、多线程与平台无关的编程语言,具有极强的可移植性、安全性和强健性。JDBC是一种规范,能为开发者提供标准的数据库访问类和接口,能够方便地向任何关系数据库发送SQL语句,同时JDBC是一个支持基本SQL功能的低层应用程序接口,但实际上也支持高层的数据库访问工具及API。所有这些工作都建立在X/Open SQL CLI基础上。JDBC的主要任务是定义一个自然的Java接口来与X/OpenCLI中定义的抽象层和概念连接。JDBC的两种主要接口分别面向应用程序的开发人员的JDBC API和面向驱动程序低层的JDBC DriverAPI。JDBC完成的工作是:建立与数据库的连接;发送SQL语句;返回数据结果给Web浏览器。

基于JDBC的Web数据库结构其缺陷在于:只能进行简单的数据库查询等操作,还不能进行OLTP;安全性、缓冲机制和连接管理仍不完善;SUN承诺的完全跨平台跨数据库系统的功能和标准远未实现。

HTML文档制作不是很复杂,且功能强大,支持不同数据格式的文件镶入,这也是WWW盛行的原因之一,其主要特点如下:

1 简易性,HTML版本升级采用超集方式,从而更加灵活方便。

2 可扩展性,HTML语言的广泛应用带来了加强功能,增加标识符等要求,HTML采取子类元素的方式,为系统扩展带来保证。

3 平台无关性。虽然PC机大行其道,但使用MAC等其他机器的大有人在,HTML可以使用在广泛的平台上,这也是WWW盛行的另一个原因。

在开发 Web 应用程序时,通常需要应用客户端和服务器端两方面的技术。其中,客户端应用的技术主要用于展现信息内容,而服务器端应用的技术,则主要用于进行业务逻辑的处理和与数据库的交互等。

                                                                     

案例实操

1)客户端应用的技术

在进行 Web 应用开发时,离不开客户端技术的支持。目前,比较常用的客户端技术包括 HTML 语言、CSS、Flash 和客户端脚本技术。

✓ HTML HTML 语言是客户端技术的基础,主要用于显示网页信息,由浏览器解释执行,它不需要编译。

CSSCSS 就是一种叫做样式表的技术,也有人称之为层叠样式表。在制作网页时才有用 CSS 样式,可以有效地对页面的布局、字体、颜色、背景和其他效果实现更加精确的控制。

✓ Flash Flash 是一种交互式矢量动画制作技术,它可以包含动画、音频、视频以及应用程序, 而且 Flash 文件比较小,非常适合在 Web 上应用。

✓ 客户端脚本技术 客户端脚本技术是指嵌入到 Web 页面中的程序代码,这些程序代码是一种解释性的语言,浏览器可以对客户端脚本进行解释。通过脚本语言可以实现以编程的方式对页面元素进行控制,从而增加页面的灵活性。

常用的客户端脚本语言有 JavaScript 和 VBScript。目前,应用最广泛的客户端脚本语言是 JavaScript 脚本,它是 Ajax 的重要组成部分。

2)服务器端应用的技术

在开发动态网站时,离不开服务器端技术,比较传统和经典的 Web 服务器端技术主要有:CGI、ASP、SERVLET/JSP、PHP 等。

✓ CGI(公用网关接口) CGI 可以说是最早的 WEB 服务器端技术,它是个 HTTP 过滤程序,其大致的原理是:CGI 是在 WEB 服务器上运行的一个程序,该程序定义了 WEB 客户请求与应答的一种方法。

客户向服务器的请求(主要是 HTML 表单)只要属于 CGI 定义范围,就启动 CGI 程序,其任务是把客户的请求从网管的环境变量中取出并加以转换,提交给服务器上的 CGI 应用程序,这些程序可以用 C/C++/PERL 等语言编写,这些程序具备访问服务器资源(比如数据库)的能力,这些程序的运行结果,通过 CGI 转换成 HTML 格式,发送到客户端。

CGI 程序很容易实现对服务器资源的访问,但是向客户端输出则比较麻烦,程序员不能使用“所见即所得”的网页制作工具,只能一行行手写 HTML 代码,向客户端输出,不适合生成复杂页面,这项技术现在使用的人不多。但是,CGI 的基本原理却被后续的服务器端网页技术沿用。

1、html语言。首先必须要学这个,html语言又称为“超文本标记语言”,任何网页的显示都要靠html语言来表达,也是构成网页文档的主要语言。

2、服务器架设。要制作网页就需要架设服务器来调试你做出来的网页,有iis等很多种,可以在网上搜索得到。

3、css语言。css又作层叠样式表,css大部分是自动生成的,很难理解,需要学习基本的css知识,是步入高手的必经之路。

css控制着网页图片、表格、文字等等内容在我们面前的显示样式,比如颜色,边框,大小等。css能够根据不同使用者的理解能力,简化或者优化写法,针对各类人群,有较强的易读性。

4、div+css布局。这个东西是走向专业制作的必经之路,网页元素靠它来搭建基本框架,像百度空间,QQ空间的皮肤等就是利用这个来做的。

5、数据库。走向动态网页的基础,比如百度知道的提问回答这些,都涉及数据库的读、写、改、删。常见的数据库有mysql、mssql、access等。

数据库是所有软件的基础,80%以上的应用程序都涉及数据库,而作为网页制作来说没有必要学得很深,够用就行。

6、动态语言,asp,php,jsp,.net(c#等)。要操作数据库,交互就需要动态语言,现在好多动态语言像php都有“框架”,用框架建站好比用活动板房的零件建房子,全部自己写好比一块一块砖砌房子。

7、javascript脚本。JavaScript是一种属于网络的脚本语言,通常是通过嵌入到HTML网页中给网页带来各式各样的动态效果。

网页里面的验证码,弹窗,特效等就靠它了,一个没有javascript的页面基本没有,这个也有好多的框架可用,这个语言是最难的,也是最强大的,网页木马,病毒大多用这个语言。

8、平面涉及软件。flash,photoshop等,页面美化还要靠图片等东西。

9、学习一种动态网页技术

ASP是微软公司开发的代替CGI脚本程序的一种应用,也是微软公司的第一个服务器侧的脚本引擎,能够动态产生Web页面。ASP可以与Web数据库以及其它程序进行交互,是一种简单、方便的编程工具。

扩展资料:

设计事项

一、注意超链接颜色与单纯叙述文字的颜色呈现

WWW的语言—HTML允许Webpage设计者特别标明单纯叙述文字与超链接的颜色,以便丰富Webpage的色彩呈现。

如果您的网站充满知识性的信息,欲传达给访问者,建议您将网页内的文字与超链接颜色,设计成较干净素雅的色调,会较有利于阅读。

纯粹的叙述文字采用较暗、较深的颜色来呈现,超链接文字则以较鲜明抢眼的色彩来强调,至于探访过的超链接则采用较低于原超链接亮度的颜色做呈现。

二、测试所有的超链接与导览按钮的真实可行性

Webpage上线之后,第一件该做的事,是逐一测试每一页的每一个超链接与每一个导览按钮的真实可行性。彻底检验有没有失败的link无法链接到该链接的Webpage,却反而冒出“FileNotFound”的错误讯号出来。

三、让超链接的字串长短适中且走文自然

抓住能传达主要讯息的字眼当做超链接的锚点(anchor),可有效地控制住超链接的字串长度,避免字串过长(如∶整行、整句都是锚点字串)或过短(如∶仅一个字当做锚点),而不利于读者的阅读或点取。

四、当导览按钮链接到当前页时

各Webpage若重复使用同一组的导览按钮,无可避免地会产生某一导览按钮链接到当前页的情形。

为达成界面设计的一致性,并没有绝对的必要性拿掉此导览按钮,但Webpage设计者可让此按钮不再具有超链接的功能或将此按钮的彩度、亮度降低,使读者可清楚地意识到∶这个暗设下来的导览按钮不再具有超链接的功能。

参考资料:百度百科-网页设计师