




已阅读5页,还剩60页未读, 继续免费阅读
(计算机应用技术专业论文)基于j2eexml的web数据处理技术研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
硕士论文基于j 2 e e x 3 1 l 的w e b 数据处理技术研究 摘要 x m l 和j 2 e e 作为具有强大生命力的标准,短短几年内得到了迅速的应用。将x m l 和j 2 e e 两者结合起来,。可以极大地发挥各自的长处,互补地推动对方的发展。 本文详细地介绍了x m l 技术和j 2 e e 技术,叙述了x m l 在j 2 e e 中的三种应用:数 据描述和交换、数据显示及面向消息的分布计算,并在实际的f a c e 项目中应用x m l 技术和j 2 e e 技术,实现x m l 文档和关系数据库之间的相互转换;另外,对x m l 文档 进行了细粒度的访问控制,提出了一种授权访问控制算法,实现了将源x m l 文档转变 为符合一定安全需求的目标x m l 文档。 关键词:x m l ,j 2 e e ,d t d ,半结构化数据,访问控制,授权规范,授权实施 硕士论文基于j 2 e e y d t l 的w e b 数据处理技术研究 a b s t r a c t x m l ( t h ee x t e n s i b l em a r k u pl a n g u a g e ) a n dj 2 e e ( j a v a 2 e n t e r p r i s e e d i t i o n ) ,a sw o r l d w i d ei n d u s t r ys t a n d a r d ,h a v eb e e nu s e dw i d e l yr e c e n t l y w h e n x m la n dj 2 e ea r eu s e dt o g e t h e r ,i tw i l lm a k eu s eo ft h e i ra d v a n t a g e sa n df a v o r t h e i rd e v e l o p m e n ts t r o n 9 1 y g i v e ni nt h i sp a p e r ,t h r o u g ha n a l y z i n gt h ef r a m e w o r ko fj 2 e e ,t h e r ea r e t h r e ea p p l i c a t i o n so fx m li nj 2 e e ,s u c ha sd a t ad e s c r i p t i o na n de x c h a n g e ,d a t a p r e s e n ta n dm e s s a g e o r i e n t e dd i s t r i b u t e dc o m p u t i n g i nt h ef a c ep r o j e c t ,w eu s e x m la n dj 2 e et o i m p l e m e n t t h e e x c h a n g e o fx m ld o c u m e n ta n d r e l a t i o n d a t a b a s e i na d d i t i o n ,t h i sp a p e rp r o p o s e su saf i n e g r a i n e da c c e s sc o n t r o l a l g o r i t h mf o rx m ld o c u m e n t s ,w h i c hm a yp r o t e c tt h er e s o u r c eo fx m ld o c u m e n t s k e y w o r d :x m l ,j 2 e e ,d t d ,s e m i - s t r u c td a t a ,a c c e s sc o n t r o l ,a u t h o r i z a t i o n s s p e c i f i c a t i o n ,a u t h o r i z a t i o n se n f o r c e m e n t - i i - 堕主丝苎 董主! ! ! ! ! 型! 塑! ! ! 垫塑丝些垫查坠窒,一 第1 章绪论 1 1 课题背景、研究的目的和意义 近来,x m l ( t h ee x t e n s i h l em a r k u pl a n g u a g e ) 已成为i n t e r n e t 上数据表示 和数据交换的一种新的标准。x m l 的基本思想十分简单:数据的语义通过数据元素的 标记来表达,数据元素之间关系通过简单的嵌套和引用来表示。然而它潜在的影响却 是巨大的。如果所有w e b 服务器和应用程序将它们的数据以x m l 格式编码并发布到 i n t e r n e t 上,那么信息就可以很快地以一种简单的、可用的格式而获得,从而这些 信息提供者之间就易于互操作。x m l 是一种格式独立、与平台和应用程序无关的数据 描述语言,它给w e b 数据带来了结构化、智能化和互操作性,从而将w e b 从发布媒体 转换为一个应用程序处理环境。 目前,工业界也相信) 【】i l 将迅速改变w e b 的应用环境,几乎各大厂商都将x m l 作为未来数据交换的标准,并积极开发与x m l 相关的产品,这极大地推动了x m l 的发 展和普及。 另外,传统的企业信息系统大多数采用两层结构来实现它们的应用,即前台的客 户端和后台的数据库服务器。在一些情况下,服务器提供的唯一服务就是数据库服务。 在该情况下,客户端负责数据访问、应用商业逻辑、将结果转换为一个格式以便显示、 为用户显示内部的接口、以及接受用户的输入。客户服务器体系在开始的时候很容 易配置,不过随着企业业务系统变得复杂,两层结构的局限性越来越明显,不仅难于 维护,而且严重约束了企业的发展。为了克服两层结构所存在的问题,各企业信息系 统纷纷从原来的c s 结构转向多层分布式结构。 j 2 e e 则是基于多层分布式结构而定义的支持企业应用的架构,其核心采用了组 件技术,为企业应用系统提供了良好的可靠性、易扩展性和安全性。j 2 e e 技术的基 础是核心j a v a 平台或j a v a 2 平台的标准版,不仅拥有标准版的许多优点,如“一次 编写,到处运行”的特征、安全性特征、平台无关性特征、方便存取数据的j d s ca p i 、 与现有企业资源交互的c o r b a 技术及一个经过验证的安全模型等,同时还提供了对 j a v as e r v l e t sa p i 、j s p ( j a v as e r v e r p a g e s ) 、e j b ( e n t e r p r i s ej a v a b e a n s ) 以及 x m l 技术的全面支持。 将x m l 和j 2 e e 两者结合起来,可以方便地发挥各自的长处,互补地推动对方的 发展。可以预见,x m l 在j 2 e e 中的应用将是一个具有巨大潜力的研究领域。 第i 页共6 i 页 硕士论文 基于j 2 e e i x m l 的w e b 数据处理技术研究 1 2 课题来源 在上面的课题背景下,本人参加了中科院创新工程南京土壤研究所的f a c e 项目 的w e b 设计开发工作。该项目采用了j 2 e e 架构,涉及到数据库中的数据和x m l 文档 的相互转换、从x m l 文档中提取授权数据等工作。 本人自从2 0 0 0 年下半年参与课题以来,查阅了大量相关文献,系统学习了x m l 、 j 2 e e 及x m l 在j 2 e e 中的应用等技术;在实际设计开发过程中,积极认真地开展工 作,成功地应用了j 2 e e 架构;通过精心设计,成功地实现了x m l 文档和其它格式 数据的相互转换,以w e b 方式提取显示x m l 文档中的数据,并且提供了一种x m l 文档细粒度访问控制算法,提供了一定的安全性需求。 1 3 论文所做的工作和论文结构 1 3 1 论文所做的工作 1 、阐述了x m l 的由来、特点、目标及应用,还介绍x m l 相关技术: 2 、介绍了j 2 e e 及其模型,分析了j 2 e e 对于开发企业分布式应用的强大优势: 3 、论述了在j 2 e e 构架下,x m l 文档和数据库数据的相互转换,以及用j a v a 技 术提取、处理、显示x m l 文档中的数据: 4 、提出了一种针对x m l 文档的细粒度访问控制算法,它可以有效地实现对 x m l 文档数据的授权访问。 1 3 2 论文结构 本文共分为五章: 第1 章:绪论。首先介绍了本课题的背景和课题来源,说明了本人在课题中所做 的实际工作和进行的理论研究,最后列出了论文的组织结构。 第2 章:x m l 技术。x m l 作为一种迅速被大众接受的技术,有着其特定的背景, 介绍了x m l 的由来、特点、目标和应用范围。还介绍了x m l 文档的一些重要概念及在 f a c e 系统中用到的一些重要技术。 第3 章:x m l 和j 2 e e 的结合。介绍x m l 与j 2 e e 四层对应的应用,提出了x m l 在 第2 页共6 i 页 硕士论文 基于j 2 e e j o j l 的w e b 数据处理技术研究 j 2 e e 中的三方面的应用:数据描述和交换、数据显示及面向消息的分布计算。 第4 章:x m l 在f a c e 系统中的应用。在f a c e 系统中,应用j 2 e e 平台和x m l 技 术,着重实现数据描述和交换及数据显示两个方面的应用。针对x m l 文档的显示,提 供一个安全控制方法,满足一定的安全需求。 第5 章:总结和讨论。提出系统中还存在的一些问题,总结自己在毕业论文撰写 过程中的收获。 一第3 页共6 l 页 堡主堡塞 苎兰! ! ! ! ! 型! 箜! ! ! 茎堡竺型垫查翌! l 一 第2 章x m l 技术 f a c e 系统中所处理的数据大部分都要涉及到x m l 文档,且x m l 文档必须符 合x m l 规范的要求,f a c e 系统涉及到x m l 的一些重要概念。下面就x m l 一些要 求及相关技术做介绍。 2 1 x m l 概述 2 1 1x m l 的产生 x m l 是从s g m l 和h t m l 发展而来的。作为一种标记语言,从文档管理的角度 来讲,s g m l 和h t m l 是成功的。但是随着应用的发展,他们内在的缺陷已不能满 足应用进一步的需求。x m l 正是为了解决它们的不足而诞生的。 s g m l 提供了描述文档和创建新的一致性衡量准则所必要的公共框架。它为语法 标记提供了非常强大的工具,同时具有极好的扩展性,因此在分类和索引数据中非常 有用。它是一种元标记语言,也可用来创建其它的标汜语言。但是,s g m l 强大的背 后是它的复杂性,这使得它十分不适合在w e b 中快速简便地发布。还有最关键的一 点是,几个主要的浏览器厂商都明确拒绝支持s g m l ,这无疑是s g m l 在网上传播 遇到的最大障碍。 相反,h t m l 简单,而且它获得了广泛的支持。h t m l 是一个非常简单的s g m l 语言,可以方便普通人的使用。而正如设计之初所构想的那样,h t m l 现在在世界范 围内得到了广泛的应用。不幸的是,随着i n t e m e t 上应用的发展,h t m l 逐渐暴露出 许多致命的弱点,它的主要限制在: 扩展性 h t m l 不允许用户定义自己的标记或属性来说明数据的语义。 结构性 h t m l 不支持深层结构说明以表示面向对象的、层次的数据库模式。 有效性 h t m l 不支持定的规格说明,使应用程序能对数据进行结构有效性检查。 上述h t m l 的种种限制使得其不能满足下列四大类应用的需求,而) ( m l 则可以方 便地解决: 一。 第4 页共6 l 页 硕士论文基于j 2 e e x m l 的w e b 数据处理技术研究 要求w e b 客户机在两个或多个不同的数据库之间传递信息的应用; 希望将w e b 服务器的一部分工作负荷分布到w e b 客户机的应用; 要求w e b 客户机将相同数据内容用不同的视图呈现给不同用户的应用; 适应特定用户需求的智能w e b 工具的应用。 正因为如此,1 9 9 6 年人们开始致力于描述一个新的标记语言,它既具有s g m l 的强大功能和可扩展性,同时又具有h t m l 的简单性。国际互联网协会w 3 c ( w o d d w i d ew e bc o n s o r t i u m ) 决定专门成立一个s g m l 专家小组来从事此项工作。这以后, x m l 不断发展演化,并且从c m l 和m a t h m l 中汲取了大量的经验。1 9 9 7 年春天, 可扩展链接语言x l l 草案已被拟定,到了1 9 9 7 年夏天,微软也开始了关于通道描述 格式c d f ( c h a n n e ld e f i n i t i o nf o r m a t ) 的定义工作,这应该算是x m l 的第一个真正 的应用。目前的正式版本是w 3 c 在1 9 9 8 年2 月1 0 日发布的x m l l 0 规范和2 0 0 0 年1 0 月6 日发布的1 0 版的第二个版本。 与h t m l 一样,x m l 也源自s g m l ,它保留了s g m l 8 0 的功能,使复杂程度 降低了2 0 。与h t m l 不同,x m l 实际上是种元语言,可以让信息提供者根据需 要,自行定义标签及属性名,从而突破了h t m l 固定标记集合的约束。 2 1 2x m l 的特点 总的来讲,x m l 具有以f 的特点: 自描述性 x m l 允许自定义标签,并且这些标签可以说明数据的语义,而不是h t m l 中的格 式说明。 独立于平台和应用 x m l 的文档内容是基于u n i c o d e 的文本,适于网络的传输。 半结构化 不同于纯文本中的数据,x m l 数据可以用d t d 或者s c h e m a 来规范;但同时x m l 表示的是种层次型的数据,因此比传统的数据库更适合描述现实中的信息( 数据) 。 机器可处理的 相对于完全无规则的文本,计算机很容易处理x m l 文档,同时相对于无法表示语 义的h t m l 文档,计算机很容易理解x m l 文档的语义,并且这种可读性对人同样适用。 可扩展性 x m l 是一种元标记语言,可以用它来定义各种妻例标记语言标准,另外用户可以 为数据定义它们自己的词汇表,从而定义数据的处理方式。 一 第5 页共6 1 页 堡主丝奎茎士! ! ! 型型! 堕! ! ! 墼塑丝堡垫查坚窒一 广泛的支持 x m l 得到了众多的软件厂商比如m i c r o s o f t 、i b m 、s u n 、o r a c l e 等几乎所有大公 司的支持。 2 1 31 0 1 l 的目标 x m l 具有简单的,灵活的文本格式,满足了大规模电子出版的需求。x m l 将在w e b 上的各种各样的数据交换中扮演越来越重要的角色。x m l 的目标是: 使与媒体无关的国际化的电子出版成为可能; 使工业界( 特别是电子商务领域) 能定义平台无关的数据交换协议; 将信息以一种使接受者能自动处理的格式发布给用户代理: 使人们易于开发软件来处理特定的信息; 使用户能很容易地使用廉价的软件来处理数据: 使用户能以自己所需的方式来显示信息; 能提供元数据帮助用户发现信息且有助于信息的生产者和消费者彼此发现。 2 1 4x m l 的应用领域 由于基于x m l 的数据是自描述的,因此易于交换和处理,这样,l 给基于w e b 的应用软件赋予了强大的功能和灵活性。数据一旦建立,x m l 能被发送到其他应用软 件、对象或者中间层服务器做进一步处理。或者它可以发送到桌面用浏览器浏览。x m l 和h t m l 、脚本、公共对象模式一起为灵活的三层w e b 应用软件的开发提供了所需的 技术。它可应用于: 与媒体无关的出版 出版商使用x m l 创建内容。然后,选定媒体时,使用适合该输出媒体的模板格式 化并传播内容。这样同一内容可能产生数据的多种表现形式,导致“写一次,发布多 次”的能力。 电子商务 包括购物应用和供应链管理。x m l 的出现,突破了e d i 过于昂贵( 需要专有的软 硬件和租用线路) 、只能存储转发批量文件、无法在两个系统之间实时交互、文档必 须采用通用格式等发展瓶颈,它已经取代了传统的e d i ,成为了企业之间信息交换的 有力工具a x m l 作为便宜的数据交换方式使电子商务的发展进入了一个全新的阶段。 不同数据源的集成 第6 页共6 l 页 硕士论文 基于j 2 e e x m l 的w e b 数据处理技术研究 x m l 能够使不同来源的结构化的数据很容易的结合在一起,包括异构数据库的集 成。软件代理商可以在中间层的服务器上对从后端数据库和其他应用处来的数据进行 集成。然后,数据就能被发送到客户或其他服务器做进一步的集合、处理和分发。 本地计算和处理 x m l 格式的数据发送给客户后,客户可以用应用软件解析数据并对数据进行编辑 和处理。使用者可以用不同的方法处理数据,而不仅仅是显示它。x m l 文档对象模型 ( d o m ) 允许用脚本或其他编程语言处理数据。数据计算不需要回到服务器就能进行。 这些软件原来只能建立在高端数据库上。 数据的多样显示 数据发到桌面后,能够用多种方式显示。h t m l 描述数据的外观,而x m l 描述数 据本身。由于数据显示与内容分开,x m l 定义的数据允许指定不同的显示方式,使数 据更合理地表现出来。本地的数据能够以客户配置、使用者选择或其他标准决定的方 式动态地表现出来。c s s 和x s l 为数据的显示提供了描述的机制。 细粒度数据的更新 通过x m l ,数据更新的粒度可以降低。每当一部分数据变化后,不需要重发整个 结构化的数据。只需变化的元素从服务器发送给客户,且变化的数据不需要刷新整个 使用者的界面就能够显示出来。目前,只要一条数据变化了,整页都必须重建,这严 重限制了服务器的性能升级。x m l 也允许加进其他数据,加入的信息能够流入存在的 页面,不需要浏览器发一个新的页面。 不同种类应用程序间的集成 x m l 的可扩展性和灵活性允许它描述不同种类应用软件中的数据,同时由于基于 x m l 的数据是自我描述的,数据不需要有内部描述就能被交换和处理。 精确数据的搜索和检索 搜索引擎可以依赖元数据进行搜索和检索,而非传统的关键字匹配。这样能检索 精确的数据,免除经过一长串匹配的冗长搜索过程。 2 2 x m l 文档的基本语法 2 2 1 格式良好的x m l 文档 x m l 是一个元语言,可以看作是用来产生标记语言的工具。因此,x m l 并没有 预定义一个特定的标记集,而是描述了个用来定义标记集的方法。当用这个方法规 一_ 第7 页共6 1 页 塑主望茎茎王! ! ! 墅型! 塑! 生鳖塑墼墨垫查堕壅 定好一个标记集,并根据这些规定填入文本内容后,这些标记就和纯文本一起构成了 一个x m l 文档。x m l 文档必须是格式良好的,即它必须满足以下几条规则: 有一致的、良好定义的结构; 所有属性必须用引号引起来; 空白区域不能忽略; 每个开始标签必须有一个对应的结束标记; 有且仅有一个根元素包含其它所有的节点; 元素不能交叉重叠但可能包含; 注释和处理指令不能出现在标签中; 大小写敏感: 关键词如”d o c t y p e ”、”e l e m e n t ”、”a t t r i b u t e ”和”e n t i t y ”大写: 元素或属性的字符数据中不能直接出现未转义的 空元素必须闭合。 如果一个x m l 文档有相应的文档类型定义( 如d t d 或x m ls c h e m a ) 并遵循 其中的约束,则称该文档是有效的。 2 2 2x m l 文档的逻辑结构 x m l 文档的结构包括逻辑结构和物理结构。逻辑结构是指:文档由声明、元素、 属性、注释、字符引用和处理指令等组成。这些组成部分在文档的标记中必须明确规 定。一个x m l 文档最基本的逻辑结构是x m l 声明、处理指令( 可选) 和x m l 元 素。 x m l 声明是处理指令的一种,它的作用就是告诉x m l 处理程序此文件是按照 x m l 文档的标准对数据进行置标。 处理指令是用来给处理x m l 文件的应用程序提供信息的。也就是说,x m l 分 析器可能不处理它,而把这些信息原封不动地传给x m l 应用程序。然后,这个应用 程序来解释这个指令,遵照它所提供的信息进行处理,或者再把它原封不动地传给下 一个应用程序。 元素是x m l 文档的基本单元。从语法上讲,一个元素包含一个起始标记、一个 结束标记以及标记之间的数据内容。其形式是:( 标记) 数据内容( 标记) 。元素中 还可以再嵌套别的元素,包含了整个文件的数据内容的元素称为根元素( 即最外层元 素) 。元素可以有属性,属性具有类型。 第8 页共6 l 页 塑主堡壅 董王! ! ! ! ! 型! 塑! ! ! 塾塑竺墨塾查堡型 一 为了组织数据更加方便、清晰,还可以在字符数据中引入c d a t a ( 指不需解析的 纯文本) 数据块,并可以在文件中引入注释。为了和x m l 保留字符( 例如” 和x m l 一致,容易使用 它用x v l l 语言规范来定义。一方面易掌握;另一方面,可以被现有的x m l 工 具和x m l 应用系统所利用。另外,x m ls c h e m a 符合x m l 语言规范,可以利用x m l a p i ( d o m 或s a x ) 去访问: 丰富的数据类型 x m l 大纲( s c h e m a ) 支持的数据类型包括:数字型、布尔型、整型、日期时间、 u r i 、十进制数等等。而且它还支持由这些简单的类型生成更复杂的类型。并且可以 由用户自定义数据类型; 属性分组 属性的应用范围是多种多样的。有的是所有元素都有的,有的是专门为图形元素 设定的: 原型可以更新 这是最重要的特色。d t d 定义的内容模式是封闭的,而x m l 大纲定义的内容 模式是开放的,是可以更新的; 名称空间的支持 可充分利用x m l 的继承性和重用性; 互换性 可根据需要设计适合自己应用的s c h e m a 。另外,通过映射机制,还可以将不向 的s c h e m a 进行转换,以实现更高层次的数据交换。 一 第l o 页共6 l 页 硕士论文 基于j 2 e e x m l 的w e b 数据处理技术研究 在w 3 c 的不懈努力下,它将最终替代d t d 成为数据模式语言的标准。 2 。4x m l 的显示 x m l 关于文档浏览的基本思想是将数据与数据的显示分别定义,对于x m l 数 据,应用处理程序要综合x m l 文档、文档类型说明( d t d s c h e m a ) 以及样式单三 方面要素来处理和显示它。 样式单( s t y l es h e e t ) 是一种专门描述结构文档表现方式的文档,它既可以描述这 些文档如何在屏幕上显示,也可以描述它们的打印效果,甚至声音效果。样式单一般 不包含在x m l 文档内部,而以独立的文档方式存在。与h t m l 描述数据显示方式的 传统方法相比,样式单有许多突出的优点: 表达效果丰富 目前,样式单可以支持文字和图象的精确定位、三维层技术以及交互操作等,对 于文档的表现力远远超过h t m l 中的标记。更重要的是,样式单的标准规范独立于 其它结构文档的规范,当需要实现更丰富的表达效果时,仅需修改样式单规范即可, 不会牵涉到原始的x m l 文档内容; 文档体积小 在实际应用中,常常给相同名称标记下的内容定义相同的表现方式,使用传统的 方法需要在每个标记中予以描述,造成大量的重复定义。而在样式单中,对于同一个 标记只需进行一次描述就足够了,大大缩小需要传输的文件的体积,可提高传输速度, 并节约带宽; 便于信息检索 样式单可以实现非常复杂的显示效果,但由于样式描述与数据描述相分离,显示 细节的描述并不影响文档中数据的内在结构。因此,网络搜索引擎对文档进行搜索时, 不会被种种显示描述标记所迷惑; 可读性好 样式单对各种标记的显示进行集中定义,且定义方式直观易读。这使得它易学易 用,可读性、可维护性都比较好。同时x m l 文档也相对简洁、清晰,突出对内容本 身的描述功能; 内容和表现的独立 这也是最重要的优点。一方面x m l 的编写者可以集中精力于数据本身,而不受 显示方式的细枝末节的影响。另一方面定义不同的样式表可以使相同的数据呈现出不 同的显示外观,从而适合于不同应用,甚至能够在不同的显示设备上显示。因此, 第1 i 页共6 1 页 堡主笙苎茔王! ! ! ! ! 型! 塑! ! ! 塑塑竺堡垫查竺塑 x m l 数据就可以得到最大程度上的重用性,满足不同的应用需求。 迄今为止,w 3 c 已经给出了两种样式单语言的推荐标准,一种是层叠样式单c s s ( c a s c a d i n gs t y l es h e e t s ) ,另一种是可扩展样式单语言x s l ( e x t e n s i b l es t y l e s h e e t l a n g u a g e ) 。 2 4 1c s s 层叠样式单c s s 是一种样式描述规则,目前w 3 c 有两个推荐标准,c s s l 和 c s s 2 ,并正在着手制定c s s 3 。 c s s 的基本思想是为结构文档中的各个标记定义出相对应的一组显示样式。定义 的基本格式为:选择符 样式属性:取值:样式属性:取值;) 有些x m l 文档主要面向数据交换,其表现形式相对简单:有些文档是专门面向 w e b 发布的,它的表现力相对就要强一些。因此,在x m l 文档中使用c s s 的方式也 有所不同。总结起来,常用以下两种方式:引用式和嵌入式。一、引用式。引用式 是指x m l 文档本身不含有样式信息,通过引用外部c s s 文档来定义文档的表现形式。 大部分x m l 文档都采用这种方式,这也与x m l 语言内容与形式分开的原则相一致。 具体实现的方法是,在x m l 文档的开头部分写一个关于样式单的声明语句,如下: 。二、内嵌式。内嵌式是指将 c s s 样式直接嵌入到x m l 文档内部,为元素设置s t y l e 属性,并在属性值中给出对 其样式的定义。这种用法主要出现在一些特殊的x m l 文档中,一般来讲内嵌c s s 样 式的x m l 文档本身就是面向显示的,如s v g 、s m i l 等。 2 4 2x s l c s s 是一种静态的样式描述格式,其本身不遵从x m l 规范。而x s l 是通过x m l 进行定义的,遵守x m l 的语法规则。系统可以使用同一个x m l 解释器对x m l 文 档及其相关的x s l 文档进行解释处理。 x s l 由两大部分组成:第一部分描述了如何将一个x m l 文档进行转换,转换为 可浏览或可输出的格式:第二部分则定义了格式对象f 0 ( f o r m a t t e d o b j e c t ) 。在输出 时,首先根据x m l 文档构造源树,然后根据给定的x s l 将这个源树转换为可以显示 的结果树,这个过程称作树转换,最后再按照f o 解释结果树,产生一个可以在屏幕 上、纸上、语音设备或其它媒体中输出的结果,这个过程称作格式化。 到目前为止,w 3 c 还未能出台一个得到多方认可的f o ,但是描述树转换的这一 第1 2 页共6 l 页 硕士论文 基于j 2 e e x i l 的w e b 数据处理技术研究 部分协议却日趋成熟,已从x s l 中分离出来,另取名为x s l t ( x s l t r a n s f o r m a t i o n s ) , 其正式推荐标准于1 9 9 9 年1 1 月推出。现在一般所说的x s l 大都指的是x s l t 。与 x s l t 一同推出的还有其配套标准x p a t h ,这个标准用来描述如何识别、选择、匹配 x m l 文档中的各个构成元件,包括元素、属性、文字内容等。依据x p a t h 所制定的 规则,也可以很方便地找到x m l 结构文档树中的任何一个节点。 如前所述,x s l t 主要的功能就是转换,它将一个没有形式表现的x m l 内容文 档作为一个源树,转换为一个有样式信息的结果树。在x s l t 文档中定义了与x m l 文档中各个逻辑成分相匹配的模板,以及匹配转换方式。它可以很好地描述x m l 文 档向任何一个其它格式的文档作转换的方法,例如转换为另一个逻辑结构的x m l 文 档、h t m l 文档、x h t m l 文档、v r m l 文档、s v g 文档等等( 如图2 1 所示) 。限 于目前浏览器的支持能力,大多数情况下是转换为一个h t m l 文档进行显示。 至于具体的转换过程,既可以在服务器端进行,也可以在客户端进行。两者分别 对应着不同的转换模式: 服务器端转换模式 在这种模式下,x m l 文件下载到浏览器前先转换成h t m l ,然后再将h t m l 文 件送往客户端进行浏览。它存在两种方式。 动态方式:即当服务器接到转换请求时再进行实时转换,这种方式无疑对服 务器要求较高; 批量方式:实现将x m l 用x s l 转换好一批h t m l 文件,接到请求后调用 转换好的h t m l 文件即可。 客户端转换模式 这种方式是将x m l 和x s l 文件都传送到客户端,由浏览器实时转换。前提是浏 览器必须支持x m l + x s l 。 图2 1 x m l 文档通过x s l 处理器的转换图 第j 3 页共6 l 页 硕士论文 基于j 2 e e x m l 的w e b 数据处理技术研究 2 4 3c s s 与x s l 的区别 用途不同 c s s 是针对x m l ( 或h t m l ) 中各个成分设定样式,用于浏览器的显示。而x s l 是用于将x m l 文档向任何一个其它格式的文档的转换。 处理结果不同 x s l 将一种不含显示信息的x m l 文档转换为另一种新的含显示信息的文档。而 c s s 则没有任何转换动作,只是浏览器依据c s s 显示文档。 表现能力不同 x s l 的表现能力较c s s 强。这些能力包括文本的置换:根据文本内容决定显示 方式:将文档中的成分按照某一个子成分的值进行排序。此外,还有对于超链接的支 持,对于f r a m e 的支持,对于某些语种文字从上到下,行从右到左的排列格式的支 持等,都是x s l 所独有的。 语法不同 x s l 是根据x m l 的语法进行定义的。实际上是x m l 的一种应用。而c s s 的语 法自成体系,且比较简单,易学易用。 2 5 x m l 中的名称空间( n a m e s p a o e ) x m l 中的名称空间n a m e s p a c e 是用u r i 加以区别的,在x m l 文档的元素和属性中 出现的所有名称的集合。因为u r i 是独立的,这样用它来限定x m l 文档中的元素和属 性名就可以避免名称冲突,可以保证用户在他的文件中使用的名称是独一无二的。 合法名称空间的形式应该是“前缀部分:本地部分”。其中,“前缀部分”和“本 地部分”都要求是一个合法的x m l 名称。前缀部分必须是一个已经经过声明的命名空 间前缀,语法分析器将把它与命名空间声明中的u r i 引用相联系;本地部分则是在 d t d 或s c h e m a 中定义的元素和属性名。 例如 就声明了一个名称 空间,前缀是x s l 。 2 6 x l i n k 和x p o i n t e r x l i n k 允许为了创建和描述资源间的链接,而将元素插入到) a l 文档中。其用 一 第1 4 页共6 l 页 硕士论文基于j 2 e e l m l 的w e b 数据处理技术研究 幽2 2 文档对象模型 同所有的编程工具一样,d o m 仕处埋呆坚柙天明口j 题时优于其他工具。由于 d o m 对象层次对文档中不同节点之间的引用进行存储,在将一篇文档提供给d o m 应用之前必须完全读取并解析该文档。这一步还要求整个文档必须存入内存,因而开 销巨大。一些早期d o m 实现总共达到了原始文档大小的百分之百。 这种内存使用模型使d o m 不适合文档转换应用程序或那些需要对数据进行增量 解析的应用程序,如通信协议。尽管d o m 提供了一些用来修改内存中文档结构的方 法,但并它没有提供对解析文档或将新文档串行化到外部存储的明确支持。d o m 的 随机访问特性使得它在文档编辑、数据修复或导航方面是一个非常好的工具。 2 7 2s a x s a x ( s i m p l e a p if o r x m l ) 是一种事件驱动的接口。s a x 用基于事件的方式来 处理x m l 文档。许多不同的x m l 解析器,包括x e r c e s 、m s x m l 、o r a c l e 的用于 j a v a 的x m l 解析器和e l f r e d 都实现了s a x a p i 。s a x 最初是作为j a v a a p i 定义的, 其主要目的是用于那些用j a v a 书写的解析器。然而,s a x 已经被移植到大多数其他 主流的面向对象语言,包括c + + 、p y t h o n 、p e r l 和e i 疏1 。 使用s a x 的过程有两步。首先,用户使用s a x 的a p i 来定义元素标记事件( 如 s t a r t e l e m e n t b i r t h 、e n d e l e m e n t b i r t h 等) ;然后启用解析器来解析x m l 文 档。当解析器遍历x m l 文档时遇到用户定义过的元素标记事件时产生事件,该事件 将驱动应用调用相应的程序去处理该特定的元素。否则,解析器继续解析。图2 3 显 示了x m l 文档的s a x 处理。 第1 6 页共6 1 页 堡主堡奎 苎王! ! ! ! ! 型! 塑竖旦塾塑竺里垫查堡茎一 图2 3x m l 的s a x 处理 基于事件的方法使s a x 为应用开发者提供了处理特定元素的方法,而不必要求 在应用层次处理之前预建元素,处理过程将实时进行。这对需要处理元素子集或处理 大规模x m l 文档时特别有效。否则建立大量对象会耗费大量内存。 d o m 与s a x 相比,d o m 功能全面,但实现太大而且比较慢。s a x 是比d o m 更 低层的接口,s a x 运行很快,有较大的灵活性。 2 8 主要x m l 应用标准 x m l 应用标准主要有两大类别,一类是面向信息存储与信息交换的,制定这一类 标准的目的主要是规范系统信息,为将来实现不同系统间的信息交换做准备。另一类 则是面向信息发布与信息显示的,这一类标准的制定主要是为了改善和促进互联网上 的信息发布,是面向信息显示的。人们把后一类标准统称为x m l 的显示语言,其中 的代表有x h t m l 、v m l 、p g m l 、s v g 、s m i l 、o e b 、x s l f o 、w m l 、h d m l 。 2 8 1 面向网页的x t t t m l x h t m l ( e x t e n s i b l eh y p e r t e x tm a r k u pl a n g u a g e ) 裁是将过去以s g m l 定义的 h t m l ,改用x m l 来重新定义,所有的标记都与既有的h t m l4 标记一致。从很大 第1 7 页共6 1 页 硕士论文 基于j 2 e e y a l l 的w e b 数据处理技术研究 程度上讲,它是h t m l 到x m l 的过渡版本。 x h t m l 的最大特点在于它的模块化。它将这些标记根据浏览者的需求和浏览器 的支持能力分解为一个个模块。根据所选择的d t d 。x h t m l 有三种形式:严格型 ( s t r i c t ) 、过渡型( t r a n s i t i o n a l ) 、框架型( f r a m e s e t ) 。由于以后会出现不同种类的 终端和平台,例如手持设备和移动电话等,没有必要每一种终端都百分之百地支持所 有h t m l 中的标记,所以x h t m l 这一模块化的思想是顺应了网络发展的潮流和后 p c 时代的到来的。其次,x h t m l 可以通过使用名称空间而具有良好的扩展性。另 外由于x h t m l 遵循x m l 格式,因此可以用标准的x m l 工具浏览、编辑和处理, 享有x m l 的诸多优点。 x h t m l 相对于h t m l 的这些变化都充分体现了未来网页内容与形式相分离, 以及适用于多种交互环境和浏览环境的大趋势。 x h t m l 文档的文档类型声明使用x h t m l 的三个d t d 中的一个作为公共标识 符。文档的根元素是h t m l ,而且应该利用属性x m t n s 指定x h t m l 的名称空间。 x h t m l 文件可以冠以h t m l 扩展名,这样就可以用当前的浏览器浏览:也可以冠 以x m l 扩展名,确保它能被未来的x m l 编辑浏览工具所接受。 2 8 2 面向图形图像的s v g s v g ( s c a l a b l ev e c t o r g r a p h i c s ) 是一种基于x m l 的用来描述二维矢量图形和矢 量点阵混合图形的标记语言。其中,“可扩展”在图形图像技术上指的是它不局限于 一个固定的分辨率和大小,譬如可以在不同分辨率的屏幕上以相同的大小显示,也可 以在同一个网页中以不同的大小或观全局或观细节:而在网络技术上指的是这一规范 能够与其它规范相融合,从而满足更广泛的用户需求,适合于更广泛的应用方式。t c 矢 量”是指规范中描述了直线、曲线、形状等几何图形,而无须象p n g 、j p e g 等图像 格式那样逐象素进行描述,这使得集成了s v g 的x m l 文档更小,下载速度也大大 提高。“图形”是指它提供了对矢量和矢量栅格混合图形的描述,填补了大多数基于 x m l 的置标语言规范对复杂图形描述的空白。 2 8 3 面向数学的m a t h 儿 在m a t h m l 出现之前,由于h t m l 缺乏描述数学表达式的标记,这些表达式不 得不利用其它公式编辑工具先存为图象格式再插到网页中去,这样大大降低了传输速 度。m a t h m l 正是因此应运面生,w 3 c 于1 9 9 8 年4 月7 日发布了m a 廿l m l 的1 o 版 一 第1 8 页共6 1 页 堡主堡塞 茎三! ! ! ! ! 型! 丛生! 塑塑丝里塑查! 垄| _ 一 本,随后又于1 9 9 9 年7 月7 日发布了升级版1 0 1 。现在m a t h m l 2 0 草案也在讨论 之中。 m a t h l v i l 专门用于描述数学符号并且捕获其结构与内容,它的目的是使数学及科 学内容可以在w 曲上使用和重用,并且可以在其他应用系统上,如计算代数系统、 排版打印系统等,得到使用和重用。m a t h m l 从表现形式和语意两个不同的角度定义 了两大类标记,这样一来,m a t h m l 不但能够用来为高质量的显示系统编码数学符号 的表现,也可以用来为科学软件或声音合成软件等基于语义的应用软件编码其数学内 容。所有m a t h m l 部分都用一个m a t h 标记包起来,以便和其他内容区分,可以插到 h t m l 网页中。 2 8 4 面向多媒体的s m i l s m i l ( s y n c h r o n i z e d m u l t i m e d i ai n t e g r a t i o nl a n g u a g e ) 它是一种用于描述多媒体 演示文档的语言,允许将一批独立的多媒体对象,包括视频、音频、图象、文字等等, 在时间和空间轴上集成为一个同步的多媒体演示文档。这个规范继承了x m l 跨平台 的优点,而且将所有资源都以u r i 的形式存在网络中,无须编译即可使用。 s m i l 包含了以下三方面的内容:一、描述演示文档的屏幕布局;二、描述演示 文档的时间行为;三、描述媒体对象间的相关链接。 2 8 5 基于x m l 的w e b 分布数据交换技术w d d x w d d x ( w e b d i s t r i b u t e d d a t a e x c h a n g e ) 是种基于x m l 的w e b 分布式数据交 换技术,有了它即使是再复杂的数据也都可以在w e b 应用程序间相互交换。 w e b 的不同应用环境( 如p e r l ,a s p , j a v a ,j a v a s c r i p t ,p h p , e t c ) 都包含内在的数据 结构,比如数组、记录集和数据对。w d d x 为每一种语言提供了一个模块,可以 自动地将这些内在数据结构加以序列化或者翻译成一种精炼的基于f d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年广西南宁市考试招聘中小学教师笔试有关事项模拟试卷及1套参考答案详解
- 2025和田地区教师招聘(2000人)考前自测高频考点模拟试题及答案详解(夺冠系列)
- 2025年广东广州市海珠区委统战部招聘雇员1人模拟试卷及答案详解(夺冠系列)
- 2025年醇类合作协议书
- 2025年发动机用玻璃纤维编织套管项目合作计划书
- 小学安全培训会讲话课件
- 安全培训教学管理意见课件
- 河北省【中职专业高考】2025年中职高考对口升学(理论考试)真题卷【装备制造大类】模拟练习
- 2025年上门服务合作协议书
- 2025江西交科交通工程有限公司招聘1人考前自测高频考点模拟试题及1套完整答案详解
- 办公楼供电线路改造方案
- 第10课 公共场所言行文明 第2课时(课件)2025-2026学年道德与法治三年级上册统编版
- 医院新技术新项目申请
- 12YJ11 卫生、洗涤设施设计图集
- 2025年保密教育线上培训试题参考答案
- (高清版)DBJ∕T 13-493-2025 《装配式混凝土建筑深化设计标准》
- 资产评估机构采购方案投标文件(技术方案)
- 《老年上消化道出血急诊诊疗专家共识(2024)》解读
- 2024-2025学年河南省郑州外国语中学九年级上学期第一次月考道德与法治试卷
- 维修人员考核管理办法
- 2025-2030中国H发泡剂行业应用态势与需求规模预测报告
评论
0/150
提交评论