《基于SVG的油田井位图发布系统毕业设计.doc》由会员分享,可在线阅读,更多相关《基于SVG的油田井位图发布系统毕业设计.doc(39页珍藏版)》请在三一办公上搜索。
1、毕业设计论文基于SVG的油田井位图发布系统摘 要基于SVG的油田井位图发布系统的是开发井数据库项目中的一个重要的模块,目的是在SVG格式的油井分布图中轻松的实现大量井位数据的动态加载;进而利用SVG图形的特性方便的实现井位信息的定位和利用。本文主要是在B/S模式下利用SVG(Scalable Vector Graphics可升级矢量图像)和Javascript技术实现油田坐标系统中大量井位信息的动态、快速加载,方便用户对井位坐标信息的查找及利用首先利用SVG建立某一地区的油田坐标信息描绘,然后从数据库中抽取该地区所有油井的井位坐标信息,并通过某种的方式将这些井位信息绘制到SVG地图中;通过SV
2、G地图放大、缩小、移动、查找文字等功能实现井位信息的查询。然后利用数据库技术实现大量井位数据的动态加载,需要加载的数据信息包括油井的坐标、类型、所属单位等相关信息。完成后能够使用户以浏览器的方式打开井位图并对地图上的元素进行操作。关键词:油田井位图;动态加载;B/S模式;SVG;JavascriptAbstractoil field well position chart issued the system Based on the SVG is develops in the well database project an important module, the goal is in
3、the SVG form oil well distribution map the relaxed realization massive well position data dynamic load; Then uses the SVG graph the characteristic convenience realization well position information localization and the use.This article mainly is (Scalable Vector Graphics may promote vector image) und
4、er the B/S pattern using SVG and in the Javascript technology realization oil field coordinates system the massive well position information tendency, the fast load, convenient user to well position coordinates information search and useFirst establishes some local using SVG the oil field coordinate
5、s information description, then extracts this local all oil wells from the database the well position coordinates information, and draws up through some way these well position information in the SVG map; Enlarges, functions and so on reduction, migration, search writing through the SVG map realizes
6、 the well position information inquiry. Then the use data bank technology realization massive well position data dynamic load, needs to load data message including oil well coordinates, type, subordinate unit and so on related information.After completes can cause the user to open the well position
7、chart by the browser way and to carry on the operation to on the map element.Key words: Oil field well position chart; Dynamic load;B/S Mode;SVG;Javascript目 录第1章 概述 1.1井位加载.1.2 矢量图井位加载1.3 GML、VML和SVG 的比较1.4 本系统的优势第2章 “基于SVG的油田井位图发布系统”系统开发工具2.1 J2EE简介.22 B/S模式介绍.23 JAVASCRIPT语言简介 2.4 XML简介. 2.5 SVG语言
8、简介 2.6 ORACLE数据库简介. 第3章 “基于SVG的油田井位图发布系统”系统分析3.1需求分析 3.2可行性分析 3.3各功能模块的主要功能.3.4系统功能模块图第4章 “基于SVG的油田井位图发布系统”系统设计及实现4.1数据表结构的描述4.2系统的界面设计及实现 4.3系统的功能设计及实现 4.4 系统测试.第5章 结束语.参考文献 致谢 附录 第1章 概述1 1井位加载1.1.1开发背景随着计算机的使用越来越普遍,计算机在各行各业也发挥着越来越重要的作用。它正改变着我们的生活,并将远远超过电话、电报、汽车、电视对人类生活的影响。 计算机可以通过Internet带给我们知识、信息
9、、机会、观念甚至更多,它早已不是计算机专业人士的专利了,虽然它已成为千千万万人士不可缺少的生活组成部分了。但是对于某些具有较强专业技术概念的单位,则需要用到更为专业的计算机技术。 如果你是科研工作者,通过它可以用图像表述各种学术问题,使之更容易被广大的人接受;如果你是作家,你可以在你的创作中加入各种图形,更好的表现你的艺术思想;如果您是市场推广或策划人员,您可以用图像图形将您的产品介绍给顾客;如果您是教育工作者,您可以通过更形象化的方式传授知识给学生们。那么,如果是大型的油田开采企业或相关科研单位呢?对于井位信息的查询,加载以及井位图的控制等工作,如何以一种软件系统的方式实现出来便是本文的主要
10、内容,本文主要是在B/S模式下利用SVG(Scalable Vector Graphics可升级矢量图像)和Javascript技术实现油田坐标系统中大量井位信息的动态、快速加载,方便用户对井位坐标信息的查找及利用。因此,计算机在给我们的生活带来轻松的娱乐空间的同时,还为我们的工作带来了便捷。 基于SVG的油田井位图发布系统的是开发井数据库项目中的一个重要的模块,目的是在SVG格式的油井分布图中轻松的实现大量井位数据的动态加载;进而利用SVG图形的特性方便的实现井位信息的定位和利用。我的毕业设计“基于SVG的油田井位图发布系统”就是针对以上功能设计和实现的,希望能够实现一个基于B/S模式的井位
11、发布系统。 在设计中,我采用SVG图形编辑语言,把JavaScript作为脚本工具。SVG(Scalable Vector Graphics)是 W3C(World Wide Web Consortium)组织 开发的矢量图形标准。它基于 XML,其图形对象既能被分组,又能被加入样式、变换和组合。基于 XML 意味着可以使用绝大部分现今网络成熟的技术如 JaveScript, VBScript, CSS, DOM 等,也可以无缝应用 XML 家族中的技术标准如 XSL, XHTML, XPointer, SMIL 等。SVG 的事件处理使用 DOM2(Document Object Model
12、)中的机制,支持所有 DOM2-EVENT 中定义的接口,事件发出、事件捕捉、事件接收者等一系列功能都已封装实现。SVG结合JavaScript脚本语言,可以轻松的实现井位图的生成及控制。1 2矢量图井位加载1.2.1 XSLT方式1. 什么是XSLT 大家可能听说过XSL(eXtensible Stylesheet Language),XSL和我们这里说的XSLT从狭义上理解是一样的,而按照W3C的标准,XSLT的说法更严格些,因此我们在文章中统一使用XSLT的称法。XSLT的英文标准名称为eXtensible Stylesheet Language Transformation。根据W3C
13、的规范说明书(http:/www.w3.org/TR/xslt),最早设计XSLT的用意是帮助XML文档(document)转换为其它文档。但是随着发展,XSLT已不仅仅用于将XML转换为HTML或其它文本格式,更全面的定义应该是: XSLT是一种用来转换XML文档结构的语言。 2. 为什么要用XSLT 我们已经知道,XML是一种电脑程序间交换原始数据的简单而标准的方法。它的成功并不在于它容易被人们书写和阅读,更重要的是,它从根本上解决了应用系统间的信息交换。因为XML满足了两个基本的需求: (1).将数据和表达形式分离。就象天气预报的信息可以显示在不同的设备上,电视,手机或者其它。 (2).
14、在不同的应用之间传输数据。电子商务数据交换的与日俱增使得这种需求越来越紧迫。 为了使数据便于人们的阅读理解,我们需要将信息显示出来或者打印出来,例如将数据变成一个HTML文件,一个PDF文件,甚至是一段声音;同样,为了使数据适合不同的应用程序,我们必须有能够将一种数据格式转换为另一种数据格式,比如需求格式可能是一个文本文件,一个SQL语句,一个HTTP信息,一定顺序的数据调用等。而XSLT就是我们用来实现这种转换功能的语言。将XML转换为HTML,是目前XSLT最主要的功能。 3. XSLT的历史 想很多其他XML家族成员一样,XSLT是由W3C起草和制定的。它的主要发展历程如下: .1995
15、年由James Clark提议; .1997年8月正式提案为XSL; .1998年5月由Norman Walsh完成需求概要; .1998年8月18日XSL草案发布; .1999年11月16日正式发布XSL 1.0推荐版本。 目前,XSLT仍然在快速的发展中,XSLT1.1的草案已经可以在W3C网站(http:/www.w3.org/TR/xslt11)上看到。 4. 什么是XPath XPath是XSLT的重要组成部分,我们将在第四章讲解它的详细语法。那么XPath是什么呢?我们首先来了解一下XSL系列的家族关系。XSL在转换XML文档时分为明显的两个过程,第一转换文档结构;其次将文档格式化
16、输出。这两步可以分离开来并单独处理,因此XSL在发展过程中逐渐分裂为XSLT(结构转换)和XSL-FO(formatting objects)(格式化输出)两种分支语言,其中XSL-FO的作用就类似CSS在HTML中的作用。而我们这里重点讨论的是第一步的转换过程,也就是XSLT。另外,在学习XML时我们已经知道XML是一个完整的树结构文档。在转换XML文档时可能需要处理其中的一部分(节点)数据,那么如何查找和定位XML文档中的信息呢,XPath就是一种专门用来在XML文档中查找信息的语言。XPath隶属XSLT,因此我们通常会将XSLT语法和XPath语法混在一起说。 用一种比较好理解的解释:
17、如果将XML文档看作一个数据库,XPath就是SQL查询语言;如果将XML文档看成DOS目录结构,XPath就是cd,dir等目录操作命令的集合。5. XSLT和CSS的比较 CSS同样可以格式化XML文档,那么有了CSS为什么还需要XSLT呢?因为CSS虽然能够很好的控制输出的样式,比如色彩,字体,大小等,但是它有严重的局限性,就是: (1) CSS不能重新排序文档中的元素; (2) CSS不能判断和控制哪个元素被显示,哪个不被显示; (3) CSS不能统计计算元素中的数据; 换句话说,CSS只适合用于输出比较固定的最终文档。CSS的优点是简洁,消耗系统资源少;而XSLT虽然功能强大,但因为
18、要重新索引XML结构树,所以消耗内存比较多。 因此,我们常常将它们结合起来使用,比如在服务器端用XSLT处理文档,在客户端用CSS来控制显示。可以减少响应时间。 1.2.2 Javascript方式在JavaScript中是基于对象的编程,而不是完全的面向对象的编程。 那麽什麽是对象呢?如果你学过一些VB的编程,对这个名词一定不会陌生。通俗的说,对象是变量的集合体,对象提供对于数据的一致的组织手段,描述了一类事物的共同属性。 在JavaScript中,可以使用以下几种对象: 1.由浏览器根据web页面的内容自动提供的对象。 2.JavaScript的内置对象,如Date,Math等。 3.服务
19、器上的固有对象。 4.用户自定义的对象。 JavaScript中的对象是由属性和方法两个基本的元素的构成的。对象的属性是指对象的背景色,长度,名称等。对象的方法是指对属性所进行的操作,就是一个对象自己所属的函数,如对对象取整,使对象获得焦点,使对象获得个随机数等等一系列操作。举个例子来说,将汽车看成是一个对象,汽车的颜色,大小,品牌等叫做属性,而发动,刹车,拐弯等就叫做方法。 可以采用这样的方法来访问对象的属性:对象名称.属性名称,例:mycomputer.year=1996,mycomputer.owner = “me”。可以采用这样的方法,将对象的方法同函数联系起来:对象.方法名字=函数名
20、字或对象.属性.方法名,例:this.display=display,document.writeln(“this is method”)。 多看或多写一些程序,就会理解对象的方法和属性的含义了!各个对象的各种属性和方法,事件是浏览器响应用户交互操作的一种机制,JavaScript的事件处理机制可以改变浏览器响应用户操作的方式,这样就开发出具有交互性,并易于使用的网页。浏览器为了响应某个事件而进行的处理过程,叫做事件处理。 事件定义了用户与页面交互时产生的各种操作,例如单击超级连接或按钮时,就产生一个单击(click)操作事件。浏览器在程序运行的大部分时间都等待交互事件的发生,并在事件发生时,
21、自动调用事件处理函数,完成事件处理过程。 事件不仅可以在用户交互过程中产生,而且浏览器自己的一些动作也可以产生事件,例:当载入一个页面时,就会发生load事件,卸载一个页面时,就会发生unload事件等。归纳起来,必需使用的事件有三大类: 1.引起页面之间跳转的事件,主要是超连接事件。 2.事件浏览器自己引起的事件。 3.事件在表单内部同界面对象的交互。 1 3 GML、VML和SVG 的比较GML、SVG和VML都是基于XML的可用来描述矢量图形的标记语言,都是XML词表,它们的语法并不难理解,但它们都有各自不同的用途和特点,下面简单介绍一下。GML(GeographyMarkupLangu
22、age)是基于XML的空间信息编码标准,由OpenGISConsortium(OGC)提出,得到了许多公司的大力支持,如Oracle、Galdos、MapInfo、CubeWerx等。运用GML,封装的地理数据和图形解释是清楚分离的。GML基于XML用文本表示地理信息,由于GML可看成是XML的一个具体的词表,熟悉了XML就比较容易理解GML。而且随着XML的应用日益广泛,GML也将受益。另外文本比较简单、直观,容易理解和编辑。GML封装了地理信息及其属性,GML基于地理信息抽象模型,即空间实体特征及属性封装。地理特征包括一系列的属性和相应的几何信息,一般来说属性由名字、类型和值组成,几何信息
23、由基本元素如点、线、面、折线、多边形等组成。目前GML主要局限在二维应用,正扩展到二维半和三维空间以及特征间的拓扑关系。GML允许相当复杂的特征,如特征间的嵌套。例如飞机场由出租汽车道、飞机跑道等组成。GML封装了空间地理参考系,空间地理参考系统是地理信息系统数据处理的基础。GML封装了空间地理参考系统、主要的投影关系等,保证分布式处理的扩展性和灵活性。 GML可以实现地理数据的分布式存储GML对地理数据的分发是非常方便的技术手段,但其作用不止局限于此,同样可以成为地理数据分布式存储的重要手段。主要的技术工具是XLink和Xpointer。从上边的介绍可以看出GML作为描述空间信息的元语言的一
24、些优点。它只能描述空间实体的矢量信息和属性,具体显示的时候可采用两种不同的途径:GMLDrawDisplay和GMLTransformSVG,VMLDrawDisplay第一种途径需要直接操作GML数据进行分析并显示。第二种途径是把GML数据转换成相应的图形格式的数据,例如SVG、VML及X3D。然后由已经存在的支持这几种图形格式的软件进行显示。下面介绍一下SVG和VML。VML(VectorMarkupLanguage)是一个最初由Microsoft开发的XML词表,现在也只有IE5.0以上版本对VML提供支持。使用VML可以在IE中绘制矢量图形,所以有人认为VML就是在IE中实现了画笔的功
25、能。下面介绍一下VML的优点:基于XML标准,XML是公认拥有无穷生命力的下一代网络标记语言,VML具有先天的优势,它的表示方法简单,易于扩展等等。支持高质量的矢量图形显示,VML支持广泛的矢量图形特征,它们基于由相连接的直线和折线描述路径。在VML中使用两个基本的元素:shape和group。这两个元素定义了VML的全部结构;shape描述一个矢量图形元素,而group用来将这些图形结合起来,这样它们可以作为一个整体进行处理。由文本构成的图像,并可集成到HTML。由于VML使用简单的文本来表示图像,这样就可用很少的字节来表示比较复杂的图像。VML与HTML兼容,通过在HTML中声明VML命名
26、空间并声明处理函数,就可以和其他HTML元素一样使用VML元素,在客户端浏览器显示图像。VML标记里面可以定义DHTML大部分属性和事件,比如说id、name、 title、onmouseover等等。支持交互与动画,VML的功能不只是绘图,他还可以在图形中嵌入文本,并可实现超链,还可通过脚本语言实现一定的动画功能。SVG(ScalableVectorGraphics) SVG是一种基于XML的开放的矢量图形描述语言。SVG图像是与XML1.0兼容的文档,SVG元素是指示如何绘制图像的一些指令,阅读器(Viewer)解释这些指令,把SVG图像在指定设备上显示出来。使用SVG可以在网页上显示出各
27、种各样的高质量的矢量图形,支持很多您想象得出的功能:几何图形、动画、渐变色、滤镜效果等。最关键的是,它也是完全用普通文本来描述的!也就是说,这是一种专门为网络而设计的基于文本的图像格式。SVG是对PGML和VML的一种综合,所以VML的优点也就成为SVG的优点,例如:基于XML标准,高质量的矢量图像,由文本构成的图像我们可以不用任何图像处理工具,仅仅用记事本就可以生成一个SVG图像。这对于图像处理的工作者来说可能会感到不可思议。其实仔细想想也可以理解,矢量图像一般是以算法指令来描述,建立在文本基础上的SVG图像中所有的描述语句都可以直接观察到,所以也非常容易进行二次修改与更新,“可升级”的特点
28、在这里可以得到恰当的反映。另外,与VML相比SVG还有一些优点:1.灵活的文件格式SVG可升级的特性不仅仅表现在二次修改方面,还表现在另外很多地方,包括这里介绍的灵活的文件格式。在以前的图像中,文本都作为位图而保存于图像中,图像形成以后不能单独对文本进行修改;在PNG格式中这一点有所改进,文本可作为一个独立的层存在;SVG更灵活地扩展了图像的文件格式,它由三个部分组成:矢量图形、位图和文字。这样SVG不仅仅可以应用矢量图像和文字对象,同样可以纳入位图,可以制作出任何其它格式图像能达到的效果。由于文件格式是文本形式的,可以很容易地在以后任何时候进行修改。而且在页面运行的过程中,也可以对很多部分做
29、即时的修改,其中的图形描述还可以重复使用。2.支持交互和动画SVG支持SMIL(synchronizedmultimediaintegrationlanguage),使得用户可以自由的同SVG中的元素完成一些交互的动作,从而完成既定的目标,这一点在目前单独依靠图片是完成不了的,需要由网页中的脚本语句来实现。3.支持字符查找查找“图片”中的字符,在SVG中成为可能。而这在其它格式的图片文件中则是不可能的。4.支持Xlink和Xpointer这样就可以在SVG文档之间制作超级链接。SVG作为W3C组织正式推荐的图像格式,拥有众多的支持机构。像Adobe公司已经宣称将在推出的Adobe图像处理套件如
30、Illustrator、Photoshop、GoLive和CyberStudio中集成SVG的全部功能,并且还提供NetscapeNavigator和IE的插件,以便使其能够直接支持SVG文件的浏览。Netscape和Microsoft公司也已经开始进军SVG领域,这标志着未来的网络浏览器将会内置对SVG文件的支持功能。总结 GML、SVG、VML都与矢量图形有着密切的关系:GML在表示实体的空间信息的同时加入了实体的其他属性信息,是表示实体的空间信息和属性的编码标准,但它并不支持直接显示图形。而VML和SVG是在表示图形的矢量信息同时加入了图形的显示信息(即以什么样的样式显示矢量图形),是显
31、示矢量图形的两种比较好的格式。相比之下,SVG是综合了VML的优点后推出的,是国际标准,它比VML具有更多的优点,也有更广阔的前景。但由于VML有IE的支持,而SVG要想在浏览器中显示就需要安装插件,在这一点上,VML优于SVG。1 4本系统的优势 从效果来看,本程序较好的实现了设计目标。它具有以下优点:1.功能完善:本软件的设计目标就是实现一个专门井位发布及加载系统,由于目标单一,技术上难度不大,较好的实现了加载、放大、缩小、移动、选择、查询油田井位发布系统需要的大部分功能。2.方便性:本编辑器采用B/S模式,直接嵌入网页中。只需InterNet上的一台服务器,所有计算机可以在任意地点,任意
32、时刻,使用本发布系统。而且,用户在使用本系统时,只需要一个IE(5.0以上版本),和一个SVGview插件,即可以打开本系统进行井位操作。3.矢量图形:较位图而言,矢量图形具有文件小、占用磁盘空间小等优点,非常适合于网络传输,而且矢量图不受分辨率的影响,能够任意的放大缩小而不失真。因此,它的使用非常广泛。而系统正是这样一款矢量图形发布系统。4.存储灵活:本程序编辑的矢量图形的可以存在服务器端,也可以存在客户端。方便了用户的对地图及井位操作的要求。5.界面简单友好:程序界面采用一般操作人员比较熟悉的类似于普遍应用软件的布置格局,尽量使界面风格与常用应用软件相似。采用上边为工具栏、下边为地图操作区
33、域的界面格局,使用户有一种熟悉、亲切的感觉。6.技术推广:程序的开发采用SVG图形格式,本身对使用不够广泛而生命力强大的SVG图形格式也是一种推广,可以让更多的人看到SVG在图象方面的方便、简单、易用性。第2章 “基于SVG的油田井位图发布系统”系统开发工具2 1 B/S模式 B/S是Browse/Server的缩写,它是Internet发展的必然产物。在Browse/Server模式中,客户端运行浏览器软件,浏览器以超文本形式向WEB服务器提出访问数据库的要求,WEB服务器接受客户端请求后,将这个请求转化为SQL语言,并交给数据库服务器。数据库服务器得到请求后,将验证其合法性,并进行数据处理
34、,然后将处理结果返回给WEB服务器,WEB服务器再一次将得到的所有结果进行转化,变成HTML文本形式,转发给客户端浏览器以友好的WEB页面形式显示出来。B/S模式的特点:系统开发、维护和升级的方便性,它对前台客户机的要求不高,避免了盲目进行硬件升级所造成的巨大浪费;B/S模式提供了一致的用户界面,它的应用软件是基于Web浏览器的;B/S具有很强的开放性;B/S模式的结构易于扩展;具有很强的信息系统集成性;灵活信息交流和信息发布服务。2 2 J2EE简介JavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML超文本
35、标记语言、Java 脚本语言(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用。从而可以开发客户端的应用程序等。它是通过嵌入或调入在标准的HTML语言中实现的。它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择,具有以下几个基本特点:是一种脚本编写语言;基于对象的语言;简单性;安全性;动态性的;跨平台性-JavaScript是依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机,并支持JavaScript的浏览器就可正确执行。从而实现了“编写一次,走遍天下”的梦想。实际上JavaScript最杰出之处在于可以用很小的程序做大量的事。无须有高性能
36、的电脑,软件仅需一个字处理软件及一浏览器,无须Web服务器通道,通过自己的电脑即可完成所有的事情。J2EE是Sun公司推出的一种全新概念的模型,与传统的互联网应用程序模型相比有着不可比拟的优势。当今许多企业都需要扩展他们的业务范围,降低自身经营成本,缩短他们和客户之间的响应时间,这就需要存在一种简捷,快速的服务于企业,合作伙伴和雇员之间。典型的说,提供这些服务的应用软件必须同企业信息系统(EIS)相结合,并提供新的能向更为广阔的用户提供的服务。这些服务要具备以下的特点:1) 可用性:来满足现在的全球商业环境。2) 全性:保护用户的隐私和企业数据的安全。3) 可依赖性和可扩展性:保证商业交易的正
37、确和迅捷。通常这些服务是由分布的应用程序组成的,包括前端数据端和后端数据源以及它们之间的一层或几层,这些中间层提供了把商业功能和数据与EIS相结合的功能。这些中间层把客户端从复杂的商业逻辑中分离出来,利用成熟的INTERNET技术使用户在管理上所花费的时间最小化。J2EE正式降低了开发这种中间层服务的成本和复杂程度,因而使得服务可以被快速的展开,并能够更轻松的面对竞争中的压力。J2EE通过定义一种标准的结构来实现它的优势,如下:1) J2EE Application Programming Model -一种用于开发多层次,瘦型客户用户程序的标准设计模型。2) 2EE Platform-一个标
38、准的平台,用来整合J2EE的应用程序,指定一系列的接口和方法。3) J2EE Compatibility Test Suite-一套兼容测试组件,用来检测产品是否同J2EE 平台兼容。4) J2EE Reference Implementation-用来示范J2EE的能力。2 3 JAVASCRIPT语言介绍2.3.1 什么是JavaScript JavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML超文本标记语言、Java 脚本语言(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用
39、。从而可以开发客户端的应用程序等。它是通过嵌入或调入在标准的HTML语言中实现的。它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择,具有以下几个基本特点:是一种脚本编写语言;基于对象的语言;简单性;安全性;动态性的;跨平台性-JavaScript是依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机,并支持JavaScript的浏览器就可正确执行。从而实现了“编写一次,走遍天下”的梦想。实际上JavaScript最杰出之处在于可以用很小的程序做大量的事。无须有高性能的电脑,软件仅需一个字处理软件及一浏览器,无须Web服务器通道,通过自己的电脑即可完成所有的事情。2.3.
40、2 JavaScript和Java的区别虽然JavaScript与Java有紧密的联系,但却是两个公司开发的不同的两个产品。Java是SUN公司推出的新一代面向对象的程序设计语言,特别适合于Internet应用程序开发;而JavaScript是Netscape公司的产品,其目的是为了扩展Netscape Navigator功能,而开发的一种可以嵌入Web页面中的基于对象和事件驱动的解释性语言, 它的前身是Live Script;而Java的前身是Oak语言。下面对两种语言间的异同作如下比较:l 基于对象和面向对象Java是一种真正的面向对象的语言,即使是开发简单的程序,必须设计对象。JavaS
41、cript是种脚本语言,它可以用来制作与网络无关的,与用户交互作用的复杂软件。它是一种基于对象(Object Based)和事件驱动(Event Driver)的编程语言。因而它本身提供了非常丰富的内部对象供设计人员使用。l 解释和编译两种语言在其浏览器中所执行的方式不一样。Java的源代码在传递到客户端执行之前,必须经过编译,因而客户端上必须具有相应平台上的仿真器或解释器,它可以通过编译器或解释器实现独立于某个特定的平台编译代码的束缚。JavaScript是一种解释性编程语言,其源代码在发往客户端执行之前不需经过编译,而是将文本格式的字符代码发送给客户编由浏览器解释执行。l 强变量和弱变量两
42、种语言所采取的变量是不一样的。Java采用强类型变量检查,即所有变量在编译之前必须作声明。如:Integer x; String y;x=1234;x=4321;其中X=1234说明是一个整数,Y=4321说明是一个字符串。JavaScript中变量声明,采用其弱类型。即变量在使用前不需作声明,而是解释器在运行时检查其数据类型,如:x=1234;y4321;前者说明x为其数值型变量,而后者说明y为字符型变量。l 代码格式不一样Java是一种与HTML无关的格式,必须通过像HTML中引用外媒体那么进行装载,其代码以字节代码的形式保存在独立的文档中。JavaScript的代码是一种文本字符格式,可
43、以直接嵌入HTML文档中,并且可动态装载。编写HTML文档就像编辑文本文件一样方便。 l 嵌入方式不一样在HTML文档中,两种编程语言的标识不同,JavaScript使.来标识,而Java使用.来标识。 l 静态联编和动态联编Java采用静态联编,即Java的对象引用必须在编译时的进行,以使编译器能够实现强类型检查。JavaScript采用动态联编,即JavaScript的对象引用在运行时进行检查,如不经编译则就无法实现对象引用的检查。2 4 XML介绍和HTML一样,可扩展置标语言XML(eXtensible Markup Language)也是一种置标语言。它同样依赖于描述一定规则的标签和
44、能够读懂这些标签的应用处理工具来发挥它的强大功能。不过,XML这个置标语言可比HTML的功能要强大的多了。XML不但是置标语言,而且是可扩展的(eXtensible)置标语言。XML并非象HTML那样,提供了一组事先已经定义好了的标签,而是提供了一个标准,利用这个标准,你可以根据实际需要定义自己的新的置标语言,并为你的这个置标语言规定它特有的一套标签。准确的说,XML是一种源置标语言,它允许你根据它所提供的规则,制定各种各样的置标语言。这也正是XML语言制定之初的目标所在。2.4.1 XML制定的目标1)XML应该可以在互联网上直接使用(*就象HTML那样好用)。 2) XML应该支持各种不同
45、的应用方式(*不但包括浏览,还包括对内容的分析)。 3)XML应该与SGML兼容(*子承父业嘛,后面我们会讲到,SGML是XML的直接先驱)。 4)处理XML文件的应用程序应该容易编写(*计算机系的研究生花上两周的工夫就该差不多了)。 5)XML中的可选特性的数量应该减到最小,最好减至没有(*可选特性经常造成混淆)。 6)XML文件应该具有良好的可读性,并且比较清晰(*别象HTML那样,如果不借助浏览器,要想读它简直就是对你意志力和耐心的考验)。 7)用XML设计新的置标语言应该方便快捷(你不必再去经历标准制定的繁琐程序了)。 8)XML设计的置标语言应该正式、简洁(不然怎么易写易读?)。 9)XML文件应该容易编制(想想要用“记事本”写个HTML是一件多么可怕的工作)。 10)ML标记的简洁性并不重要(你不必再去费尽心机减少标记)。事实上,用XML定义的置标语言可以根据标记描述的侧重点不同分为两大类。一类偏重于语意描述