




已阅读5页,还剩57页未读, 继续免费阅读
硕士学位论文-东软通用数据处理系统的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连理工大学 硕士学位论文 东软通用数据处理系统的设计与实现 姓名:苗海 申请学位级别:硕士 专业:软件工程 指导教师:司伟生 20060604 大连理工大学专业学位硕士学位论文 摘要 随着社会信息化的日益加强,传统的数据处理系统存在专用性太强、安全性不高、 数据共享性差等缺陷,不利于企业应用。为了充分利用企业信息资产所带来的优势,企 业迫切需要一个可扩展的、可靠的、可维护的通用数据处理系统,用于向相关的人员提 供关键任务信息,以保证业务的成功。本文的主要目的在于研究如何开发这样一个系统, 从而帮助企业简单、快捷地组织、处理数据信息并将其直观表现。 本文结合实际项目,重点论述了通用数据处理系统的设计与实现过程。文章首先对 通用数据处理系统的总体结构进行描述与分析,分解系统功能模块并明确各模块间的相 互调用关系。接着,文章详细论述了通用数据处理系统实现的具体过程,包括数据模板 的定义,数据模板的解析,数据结果集生成以及基于数据结果集的数据展现与分析。同 时文章对系统的配置管理以及安全控制的实现也进行了详细描述。为了增强数据模板的 可扩展性和通用性,系统采用X M L 作为数据模板描述文件。在数据结果集展现分析方 面,系统基于数据结果集对象实现多层次的结果集展现方案以及结果分析,同时系统提 供了完善的能够有效的保证系统资源安全性的配置及管理功能。系统基于J 2 E E 架构, 体现了系统的高质、高效及可移植性。 通用数据处理系统的实现为企业提供了一个标准的数据处理分析平台。系统独立于 企业业务逻辑及数据库平台,可应用于多种行业的业务处理。同时系统既能够独立部署 在J 2 E E 服务器上与企业应用系统并行运行,也可以J A R 包的形式提供A P I ,与企业应 用无缝集成。 关键字:数据模板;结果羹展现;结粟集分析;可扩展标记语言 东软通用数据处理系统的设计与实现 D e s i g na n dI m p l e m e n t a t i o no fG e n e r a l i z e dD a t aP r o c e s s i n gS y s t e mo f N e u s o f t A b s t r a c t W i t ht h ee v e ri n c r e a s i n gs o c i a li n f o r m a t i o ne x p l o s i o n ,t h et r a d i t i o n a ld a t ap r o c e s s i n g s y s t e mw i t hs p e c i f i cs i n g l eu s a g e ,i n e f f i c i e n ts e c u r i t ya n dl a c ko fd a t as h a r i n g ,C a l ln ol o n g e r m e e tt h ed e m a n do fe n t e r p r i s e s T of u l l yt a k ea d v a n t a g eo fi n f o r m a t i o na s s e t s ,e v e r y a p p l i c a t i o ne x i g e n tn e e d sag e n e r a l i z e dd a t ap r o c e s s i n gs y s t e m ,w h i c h i se x t e n d a b l e ,r e l i a b l e a n dm a i n t a i n a b l e T h e s ea p p l i c a t i o n sc a ns u p p l yi n d i s p e n s a b l ei n f o r m a t i o nt op e o p l ew h oa r e c o n c e r n e dt oe n s u r eb u s i n e s sS u C C e S S T h i sp a p e rm a i n l ya i m sa tr e s e a r c h i n gh o wt od e v e l o pa s y s t e mw h i c hc a ni n d i c a t ea n da n a l y z et h es t a t i s t i c sa n di n f o r m a t i o ns i m p l ya n dq u i c k l yf o r e n t e r p r i s e s B a s e do nt h ep r o j e c to fe n t e r p r i s e ,t h i sp a p e re x p l a i n st h ed e s i g na n di m p l e m e n t a t i o no f g e n e r a l i z e dd a t ap r o c e s s i n gs y s t e m T h ep a p e rf i r s td e s c r i b e sa n da n a l y z e st h e o v e r a l l s t r u c t u r eo ft h eg e n e r a l i z e dd a t ap r o c e s s i n gs y s t e m ,a n dt h e nd e m o n s t r a t e st h en e e da n d r e l a t i o na m o n gm o d u l e T h e n ,t h ep a p e re x p o u n d st h ei m p l e m e n t a t i o no fg e n e r a l i z e dd a t a p r o c e s s i n gs y s t e m ,i n c l u d i n gt h ed e f m i d o no fd a t as t e n c i l ,t h ep a r s i n go fd a t as t e n c i l ,t h e d e t a i l e di m p l e m e n t a t i o np r o c e s so fb u i l d i n go fd a t ar e s u l t ,t h ed i s p l a ya n dt h ea n a l y s i so fd a t a r e s u l t T h i sp a p e ra l s oa n a l y z e si m p l e m e n t a t i o no fs y s t e mc o n f i g u r a t i o na n ds y s t e ms e c u r i t y T os t r e n g t h e nt h es y s t e m se x p a n s i b i l i t y ,t h eX M Li su s e da sd a t as t e n c i l A sf o rt h e d e m o n s t r a t i o no ft h i sd i s p l a ya n do fd a t ar e s u l t ,s y s t e mp r o v i d e sd i f f e r e n ts c h e m eo fd a t a d i s p l a ya n da n a l y s i sb a s e do nt h eo b j e c to fd a t ar e s u l t W h a t sm o r e ,t h es y s t e mi n c l u d e s c o n f i g u r a t i o na n de f f i c i e n td i s t r i b u t i n g a n dm a n a g i n gf u n c t i o nt oe n s u r et h es e c u r i t yo f r e s o u r c e s T h eJ 2 E Ef r a m e w o r kc o n t r i b u t e st ot h es y s t e m sh i g hq u a l i t y ,h i g he f f i c i e n c ya n d t r a n s p l a n t a t i o n T h ei m p l e m e n t a t i o no fg e n e r a l i z e dd a t ap r o c e s s i n gs y s t e mp r o v i d e se n t e r p r i s e sw i t ha s t a n d a r ds c h e m e T h es y s t e mi si n d e p e n d e n to fe n t e r p r i s e sb u s i n e s sl o g i ca n dd a t a b a s e p l a t f o r m ,a n dc a na p p l yt ot h eb u s i n e s st r e a t m e n to fm a n yk i n d so ft r a d e s T h es y s t e mc a n o p e r a t e si n d e p e n d e n t l y o i lt h eJ 2 E Es e r v e rw o r k i n gp a r a l l e lw i t ht h ea p p l i c a t i o n s ,a n db e i n g p r o v i d e dw i t hA P Ib y aJ A R ,i tc a na l s oi n t e g r a t e ds e a m l e s s l yw i t ht h ee n t e r p r i s ea p p l i c a t i o n K e yW o r d s :D a t aS t e n c i l ;R e s u l tD i s p l a y ;R e s u l tA n a l y s i s ;e X t e n s i b l eM a r k u pL a n g u a g e 独创性说明 作者郑重声明:本硕士学位论文是我个人在导师指导下进行的研究工 作及取得研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写的研究成果,也不包含为获得大连理 工大学或者其他单位的学位或证书所使用过的材料。与我一同工作的同志 对本研究所做的贡献均已在论文中做了明确的说明并表示了谢意。 作者签名:! 氢五日期:丝堡垒壁画 大连理工大学硕士研究生学位论文 大连理工大学学位论文版权使用授权书 本学位论文作者及指导教师完全了解“大连理工大学硕士、博士学位论文版权使用 规定”,同意大连理工大学保留并向国家有关部门或机构送交学位论文的复印件和电子 版,允许论文被查阅和借阅。本人授权大连理工大学可以将本学位论文的全部或部分内 容编入有关数据库进行检索,也可采用影印、缩印或扫描等复制手段保存和汇编学位论 文。 作者签名:蓝盗 导师签名:訇帛生导师签名:到! 翌兰 兰丛年月盖日 大连理工大学专业学位硕士学位论文 1 绪论 1 1 市场前景及国内外研究状况 在计算机出现之前,数据需要以纸质文件等形式进行存储,数据的组织与处理都是 需要手工进行的。在计算机系统得到广泛应用之后,人们开始使用计算机及计算机应用 软件进行数据的分析处理,使用数据库管理系统来管理数据,使用应用程序来完成企业 具体业务逻辑的处理。目前,随着数据库系统使用的越来越广泛,企业数据信息变得越 来越巨大,同时这些信息也为每一个企业提供了制定和实施成功的商业战略所需的原始 素材。所以企业往往会在获取关键任务信息资产上投入数以百万的投资,建立如E R P ( 企业资源规划) 、C R M ( 客户关系管理) 和S C M ( 供应链管理) 等系统,以捕捉、 处理和存储与市场、客户、竞争对手和业务流程相关的有价值的数据。虽然这些系统能 够高效的收集企业的运营信息,但是却通常并不针对不同信息消费者,如雇员、客户和 供应商等提供分析、浏览和处理这些信息,并使其做出正确决策的功能。为了充分利用 企业信息资产所带来的优势,每一个企业级应用都需要一个可扩展的、可靠的通用数据 处理解决方案,用于向企业关键人员提供关键任务信息,以保证业务的成功。 在应用系统的开发过程中,数据分析处理对于任何一个企事业单位来说都是必不可 少的。使用了多个系统的企业怎样从不同的系统中组合数据。现有的大多数管理信息系 统具有很大的局限性,不能满足灵活多变的应用需求。一方面,由于服务器端数据结构 的复杂性、S Q L 查询语言的技术性,最终用户不能随意访问数据库,大多数情况下,需 要专业开发人员进行繁杂的开发,而开发出来的系统中,其数据展现样式往往是固定的, 缺少适应变化的灵活性,需求发生变化时,必须求助于开发人员重新编写程序,进行二 次开发、三次开发等,增加系统开支。另一方面,信息系统开发部门整天忙于满足这些 不断变化的查询和数据处理的需求,这对开发部门来说既枯燥又繁琐,同时还要忙于沉 重的技术支持和后期维护,这些都极大地加重了开发人员的负担。 目前企业信息的来源比较分散,信息不能高度的集成和共享,不能将关键的准确的 数据及时的传输的相应的决策人的手中,为企业的运作决策提供数据。当前建立的信息 系统各自独立,一般都是面向基层作业者和中低层管理者,不能为高层管理者提供完整 的企业信息,且系统问无法进行数据交流。有很多的企业已经花费了大笔的资金来构造 企业内部的管理信息系统,比如有的企业已经实施了企业管理系统,或其他业务管理系 统,甚至有的企业已经实施了E R P 等大型软件系统,用户在使用这些系统的过程中已 经输入了大量的、宝贵的信息资料。但是,由于系统没有很好的数据处理工具,没有办 东软通用数据处理系统的设计与实现 法对数据进行有效地整合处理,因此不能很好地把系统中丰富的数据资源表现出来,为 用户提供全面的、详细的信息。在关系型数据库曰渐普及的今天,市场需求的是如何使 得数据库中的大量信息满足人们不断变化的业务需求,并能够及时为管理决策支持提供 服务。 数据处理是企业级应用开发最重要的部分,绝大多数企业采用报表方式进行数据信 息组织与处理,这类系统的开发也属于商业智能应用的最广泛领域。同时这类通用数据 处理系统的开发也属于商业智能应用最广泛的领域。商业智能的概念最早是G a r t n e r G r o u p 于1 9 9 6 年提出来的。商业智能的应用一般可以分为四个阶段:首先是企业报表的 产生,特别是财务报表,在上市公司或规模较大的企业需求非常普遍;第二就是“例外 分析”,所谓例外分析就是找出报表中所显示的问题,层层深入的找出其出现的原因; 第三进行分类,通过数据挖掘,进一步了解客户的特点、习惯等;最后就是通过商业智 能,分析所得到的数据信息,进而制定出相关规划、策略。企业可以根据自身信息化水 平按部就班的实施商业智能,这样可以大大降低实施风险,也更容易有针对性做出决策。 商业智能技术并不是基础技术或者产品技术,是一种基于大量信息基础上的提炼和 重新合的过程,这个过程与知识共享和知识创造紧密结合,完成了从信息到知识的转变, 最终为商家提供的是因特网时代的竞争优势和实实在在的利润【1 。】。商业智能是从大量 的数据和信息中发掘有用的知识,并用于决策以增加商业利润,是一个从数据到信息到 知识的处理过程。商业智能用来辅助商业活动做出快速反应,加快知识的获取速度,减 少企业不确定性因素的影响。因此满足管理层和决策层对信息知识的时间性和准确性的 要求 圳。这些要求推广来看,说明企业正逐渐摆脱单纯依赖于软件来处理日常事务, 而是明确要利用软件来帮助自己,依据企业数据做出更好、更快的决策。对数据进行统 计、分析和挖掘是任何一个业务系统都必须有的功能,虽然不影响业务系统各项业务的 流程处理,却是业务系统中一个非常重要的部分,因为任何一个系统的输入目的都是为 了更好地输出,系统的输出是否符合用户的需求是评判一个系统优劣的主要标准,一个 设计优秀的系统必然有良好输出方式。通常来讲,企业用户会首先通过报表的形式来组 织存储在业务系统中的各项数据,对这些数据进行排列组合和统计,展现给相关人员并 向决策者提供决策的依据,达到对业务状况的深度分析和透视的目的。 目前国内数据分析处理系统主要分为专业通用数据处理系统、其他产品内嵌系统两 大部分。例如O r a c l e 、S y b a g e 等提供的数据处理系统都应算为其他产品内嵌范围。 对于数据处理分析系统,由于要面对大数据量和大用户量的并发访问,并可能需要 访问不同数据库的数据,非专业数据处理系统越来越不能适应当前要求,专业通用数据 处理系统已逐渐发展为市场主流。 大连理工大学专业学位硕士学位论文 国外产品主要有B O 、B r i o 等,其特点是用户范围比较广,产品比较完善,技术比 较成熟等,但其缺点同样突出,因为单纯就数据处理展现功能来说,无法满足国内各种 格式的要求,而且价格较高,限制了国内客户的选择,这也是国外的数据处理系统迟迟 无法打开中国市场的原因。 国内产品主要有蓝葵、润乾等,其特点是使用符合国内用户使用习惯,简单方便, 能够完成符合国内要求的复杂数据结果集展现;其缺点是对O L A P 等高端功能的支持不 够完善,此外,B O 、B d o 等这些国外产品所积累的行业经验与分析模型是国内产品所 不具备的。 综上,目前国内通用数据处理产品市场潜力巨大,没有任何一家厂商可以形成压倒 性的市场占有率。在产品的选择上,只有少数的大型企业才有能力去购买国外产品,但 却没有能力购买这些产品相应的行业分析模型。同时目前国内的中小型企业对通用数据 处理系统的需求又十分强烈,在这种情况下,一款通用数据处理系统的开发就显得极其 重要。 1 2 选题来源及应用背景 课题来源于东软股份有限公司基础软件事业部通用数据处理系统开发项目,该项目 主要用于解决东软内部各行业事业部实施企业项目过程中的大量业务数据处理问题,系 统本身不局限于特定业务领域,不依赖与特定数据来源,独立于企业业务数据库平台, 通用于多种业务类型的数据分析处理。目前,该系统已经被东软教育,医疗,税务,国 土资源等事业部广泛使用。 东软通用数据处理系统的设计与实现 2 相关技术介绍 2 1J 2 E E 技术 2 1 1J 2 E E 体系结构 J 2 E E 是J a v a2E n t e r p r i s eE d i t i o n 的缩写,意为J a v a2 平台企业版。J 2 E E 技术作为 新一代分布对象的标准之一,具有结构规范、实现灵活、跨语言能力、跨平台实现、面 向对象以及安全性好等方面的特点,将J 2 E E 技术应用于企业信息发布系统,可以很好 地解决传统信息发布系统存在的不足。J 2 E E 技术作为分布式对象技术,描述的是系统 整体设计格局,成为组件组装的基础1 5 J 。 尽管J 2 E E 应用程序可以由三层或四层构成,但在通常情况下,J 2 E E 应用程序由三 层构成,并且分布于三个不同的位置:客户端,服务器,后台数据库服务器。通过这种 方式运行的三层应用模式拓展了基于客户服务的两层模式。 J 2 E E 应用可以是基于W e b 的,也可以是不基于W e b 的。在一个基于W e b 的J 2 E E 应用中,用户的浏览器在客户层中运行,并从一个W e b 服务器上下载W e b 层中的静态 H T M L ( H y p e r t e x tM a r k u pL a n g u a g e ) 页面或由J S P 或S e l e t 等程序生成的动态H T M L , 页面也许还有一个不基于w e b 的J 2 E E 应用系统中一个独立的客户端程序,或者不运行 在一个H T M L 页面中,而是运行在其它一些基于网络的系统,比如,手持设备或汽车 电话中的J a v a 程序。在客户层中运行并在不经过W e b 层的情况下访问中间件对象,该 不基于W e b 的客户端程序可能也包括一个J a v a B e a n 类来管理用户输入,并将该输入发 送到在企业层中运行的E J B 对象来处理。根据J 2 E E 规范,J a v a B e a n 类不被视为组件, 为J 2 E E 平台编写的J a v a B e a n 类有实例变量和用于访问实例变量中的数据的g e t 和s e t 方法,以此种方式使用的J a v a B e a n 类在设计和实现上通常都是简单的,但是必须符合 J a v a B e a I l 规范中列出的命名和设计约定。 w e b 层是一个特殊的客户层,J 2 E EW e b 层的W e b 组件可以由J s P S e r v l e t 程序,基 于W e b 的J a v aA p p l e t 组成,调用S e w l e t 或者J S P 页面的H T M L 页面在应用程序组装 时与W e b 组件打包在一起,就像客户层一样,W e b 层可能包括一个J a v a B e 锄类来管理 用户输入,并将输入发送到在业务层中运行的F _ J B 对象来处理。运行在客户层的W e b 组件依赖w c b 服务器来支持响应客户的请求。 业务层作为解决或满足某个特定业务领域,比如银行,零售或金融业需要的逻辑的 业务代码,由运行在业务层的E J B 组件或者其他的中间件来执行。一个E J B 对象从客 户程序处接收数据,对数据进行处理,如果需要,再将数据发送到企业信息系统层存储。 大连理工大学专业学位硕士学位论文 一个F J B 对象还可以从企业信息系统层中检索数据,并将数据送回客户程序。运行在业 务层的E J B 对象依赖于E J B 容器来为诸如事务,生命期,状态管理,多线程及资源存 储池提供通常都非常复杂的系统级代码。业务层经常被称作E n t e r p r i s eJ a v a B e a n 。E J B 层,业务层构成了3 层J 2 E E 应用的中间层,而其它两层是客户层和企业信息系统层查 询服务。因为一个J 2 E E 应用程序的组件是单独运行的,并且往往在不同的设备上运行, 因此需要一种能让客户层和w c b 层代码查询,并引用其他代码和资源的方法,客户层 和W e b 层代码使用J a v a 命名和目录接口J N D I 来查询用户定义的对象,例如E J B 环境 条目,例如一个数据库驱动器的位置,企业信息系统层中用于查找资源的J D B C ( J a v a D a t a b a s eC o n n e c t i v i t y ) D a t a S o u r c e 对象以及消息连接安全和事务管理,诸如安全和事务 管理这样的应用行为可以在部署时在W e b 和F _ J B 组件上进行配置。 J 2 E E 平台使用多层分布式的应用模式。应用逻辑根据其功能分成多个组件,各种 不同的应用组件构成分布在不同层的机器上的J 2 E E 程序 6 1 。 J 2 E E 应用程序由组件构成。一个J 2 E E 组件是自包含的,与其相关的与其它组件通 信的类及文件集成到J 2 E E 应用程序的功能软件单元。J 2 E E 组件用J a v a 语言编写,通过 相同的方法解析。J 2 E E 组件与标准J a v a 类的不同之处在于J 2 E E 组件集成到了应用程序 中,证明能很好的组成,与J 2 E E 规范兼容,并部署到负责运行、管理的J 2 E E 服务器。 J 2 E E 客户端可以使网络浏览器也可以是桌面应用程序。 网络客户程序由两部分组成:动态网页包含各种标记语言,由运行于网络层的网络 组件产生,浏览器从服务器接受信息并反馈到页面上。网络客户端又称为瘦客户。瘦客 户端通常不运行像查询数据库,执行复杂的业务规则,或连到合法的应用程序。当用户 在使用瘦客户端时,重量级的操作都载入到运行于J 2 E E 服务器上的企业B e a n ,能够均 衡安全,速度,服务及可靠性。 网页可以包含小程序。小程序是一个较小的用J a v a 语言编写的程序,并能通过安装 在浏览器上的虚拟机运行。网络组件首选A P I ,可以创建网络客户层,因为在客户系统 中不需要插件或安全策略文件,另外,网络组件能提供更干净的,模块化的应用设计, 因为可以将程序设计与页面设计相分离。这样,页面设计人员可以进行页面设计而不需 要懂J a v a 程序设计。 J 2 E E 应用客户端运行在客户上,为用户处理任务提供了比标记语言丰富的接口。 典型的是拥有通过S w i n g A P I 建立的图形用户界面,基于命令行的接口也是可以的。应 用客户端可以直接调用业务逻辑层的企业B e a n 。 东软通用数据处理系统的设计与实现 服务端及客户端也可以包含基于J a v a B e a n 组件来管理客户端与运行于服务端的组 件间的数据流或服务端组件与数据库间的数据流。J 2 E E 规范没有认为J a v a B e a n 为J 2 E E 组件。J a v a B e a n 组件有实例变量和g e t ,s e t 方法来设置、获取变量值。 J 2 E E 网络组件可以是S e r v l e t 或J S P 。S e r v l e t 是J a v a 类,能动态处理请求及响应。 J S P 页面是基于文档的,能像S e r v l e t 一样执行的能允许更多的静态页面内容。静态H T M L 页面及A p p l e t 网络组件绑在一起,但J 2 E E 规范没有认为这些为网络组件。网络层可以 包含J a v a B e a n 组件来管理用户输入、发送输入道逻辑层的E J B 以处理。 业务逻辑代码是解决、达至0 特定业务领域的需求,如银行、零售、金融,又E J B 处 理的业务逻辑层。企业B e a n 可以重新从存储器找回数据,如果必要并处理,然后发送 到客户程序。总共有三种E J B :会话B e a n ,实体B e a n ,消息驱动B e a n 。会话B e a n 代 表短暂的与客户的会话,当客户结束执行时,会话B e a n 及其数据就消失了。与会话B e a n 相比,实体B e a n 代表存储在数据库的表,如果客户结束程序或服务器关闭,潜在的服 务方法会将数据存储。 2 1 2J S P 与S e r v I e t J S P S e r v l e t 是J a v a 技术在w e b 上的扩展,支持W e b 服务器端的应用开发同。 J S P S e r v l e t 程序应该算是业务层,也就是第二层,应该把商业逻辑从J S P S e r v l e t 程序中 最大限度的剥离,让J S P S e r v l e t 程序只负责数据的显示与接受用户请求,这样就属于 客户端表示层的了。 S e r v l e t 技术作为J 2 E E 系统架构的重要组成部分,是整个系统架构的交通枢纽,称之 为控制引擎,可以在许多方面扩充W e b 服务的功能【8 1 0 包j a v a x s e r v l e t 和 a v a 】【- s e r v l e t h t t p 提供了写S e r v l e t 的接口和类。所有的S e r v l e t 都必须实现S e r v l e t 接口,该接口定义了生 命周期方法。当实现一个一般的服务时,通常使用或拓展G e n e r i c S e r v l e t 类,该类提供 了J a v aS e r v l e tA P I ,H t t p S e r v l e t 类提供了一些方法,如d o G e t 及d o P o s t ,用来处理特定 的H T T P 服务。 J S P 是J a v aS e r v e r P a g e s 的简称。J S P 页面由H T M L 代码和嵌入其中的J a v a 代码所 组成。服务器在页面在客户端请求以后对这些J a v a 代码进行处理,然后将生成的H T M L 页面返回给客户端浏览器【9 1 。在这种方式中,J S P 技术将页面逻辑与页面的设计和显示 分离开来。J S P 技术是J a v a 系列技术中的一部分,使用基于J a v a 的脚本语言,J S P 页面 被解析成S e r v l e t 。J S P 页面可以调用J a v a B e a n 或E J B 控件来完成服务器端的处理。在 这种情况下,J S P 技术是基于W e b 的高可伸缩性应用中的关键部件。J S P 页面不局限于 特定的平台或W e b 服务器。 大连理工大学专业学位硕士学位论文 J S P 建立在S e r v l e t 规范基础上,本质上也是S e r v l e t ,和S e r v l e t 一样创建动态内容, 但S e r v l e t 内容由代码生成,动态内容和静态H T M L 是紧耦合,而J S P 的设计目标是内 容和表示的分离,简化动态W e b 页面的创建和管理。J S P 是J 2 E E 中一个重要部分,处 于多层体系结构的前端,实现应用的客户G U I 。可以结合H T M L 和新的脚本标记,是 服务器端的脚本语言,S e r v l e t 是事先解析好并由部署者部署到容器中,而J S P 可以动态 创建,在第一次调用的时候被转换成S e r v l e t 。 2 2 标记语言应用 2 2 1 可扩展标记语言 X M L 是e X t e n s i b l eM a r k u pL a n g u a g e 的缩写,意为可扩展的标记语言 1 0 】。X M L 扩 展标记语言的应用是一种真正的数据与展现分离的机制,由于其特有的优势,在J 2 E E 构架中有着重要而广泛的应用。可以真正解决动态的数据处理、业务流异步消息机制、 动态的界面生成等关键的应用技术问题【1 1 】。X M L 是一种超文本标识语言,源于S G M L ( S t a n d a r dG e n e r a l i z e dM a r k u pL a n g u a g e ) ,是S G M L 的一个子集I l “。如果说H T M L 是 S G M L 衍生的一种文件格式,那么X M L 则是S G M L 的简化版,所有X M L 文件也是合 乎规范的S G M L 文件。所以X M L 也是一种元语言旧J 。 关于X M L 要理解的第一件事是,X M L 不只是像超文本标记语言或是格式化的程 序。这些语言定义了一套固定的标记,用来描述一定数目的元素。X M L 最重要的特征 是:被标记的各个数据是保持其含义的,因此系统间交换数据的可能性极大提高。X M L 最基本的概念是:结构化标记数据,实现了“文档结构化”的语言规范,即采用D T D ( D o c u m e n tT y p eD e f i n i t i o n ) 文档类型定义的语言标准【“】。 X M L 定义了一套元句法,与特定领域有关的标记语言都必须遵守。如果一个应用 程序可以理解这一元句法,那么也就自动地能够理解所有的由此元语言建立起来的语 言。浏览器不必事先了解多种不同的标记语言使用的每个标记。事实是,浏览器在读入 文档或是X M L 的D T D 时才了解了给定文档使用的标记。 由于X M L 是非专有的并易于阅读和编写,就使得X M L 成为在不同的应用间交换 数据的理想格式。X M L 对于大型和复杂的文档是理想的,因为数据是结构化的。这不 仅使用户可以指定一个定义了文档中的元素的词汇表,而且还可以指定元素之间的关 系。例如,如果要将销售客户的地址一起放在W e b 页面上,这就需要有每个客户的电 话号码和电子邮件地址。如果向数据库中输入数据,可确保没有漏下的字段。还需要每 部书都有一个作者。当没有数据输入时还可提供一个缺省值。X M L 也提供客户端的包 括机制,可以根据多种来源集成数据并将其作为一个文档来显示。数据还可以马上进行 东软通用数据处理系统的设计与实现 重新排列。数据的各个部分可以根据用户的操作显示或隐藏。当处理大型的信息仓库, 比如关系型数据库时是极为有用的。 2 2 2 可扩展的样式语言 X S L T ( e X t e n d e dS t y l e s h e e tL a n g u a g eT r a n s f o r m a t i o n ) 样式表是一个X M L 文档。随 着X M L 应用的日益广泛,X M L 的数据检索,查询,转换就成为一个非常重要的应用领 域,而X S L T 是用于操作X M L 文档的完整高级语言【“】。通过使用X M L 的尖括号标记 语法来表示文档的结构。这种语法在某种程度上是比较笨拙的,而此决策可以使该语言 变得更繁琐。但是,的确是有好处的,可以自动使用X M L 的所有词汇设备( 例如,U n i c o d e 字符编码和转义,使用外部实体等等) ,可以很容易使X S L T 样式表变成转换的输入或 输出,使该语言可以作用于自身,还能够使将期望的X M L 输出块嵌入样式表变得很容 易。实际上,许多简单的样式表基本上可以写作期望输出文档的模板,并且可以将一些 特殊指令嵌入文本中,以便插入输入中的变量数据或计算某个值。这就使X S L T 在这个 简单的级别上非常类似于许多现有的专用H T M L 模板语言。 X S L T 以传统语言中的功能性编程的概念为基础。样式表由模板组成,这些模板基 本上是单一功能,每个模板将输出树的一部分定义成一部分输入树的功能,并且不产生 副作用。使用无副作用的规则受到严格控制( 除了转义成用类似J a v a 的语言编写的外部 代码) 。X S L T 语言允许定义变量,但不允许现有变量值更改,即没有赋值语句。这个 策略使许多新用户感到困惑,其目的是为了允许逐步应用样式表。原理是如果语言没有 副作用,那么对输入文档做很小的改动时,不必从头执行整个转换就应该可以计算出对 输出文档的最后更改【1 6 _ 切。 2 2 3 可扩展超文本传输语言 x I - r r M L 可以简单地理解为H T M L i n X M L ,与H T M L 不同X H T M L 并不代表一种标记 语言,而是一系列标记语言的统称,因为二者都源自且兼容H T M L 4 ,扩展了H T M L 4 以 更好地满足人们的需求,因此称为x H l ML 1 1 8 】。H T M L 是使用S G M L 带0 定出的标记语言, 而X H T M L 则是使用L 制定出的标记语言【1 9 】。在W 3 C 的X H T M L 的规范说明中是这么 定义X H T M L 的:“X H T M L 包括一系列的文档类型说明D T D 和模块,这些D T D 和模块是 从H T M I A 中重新生成,是H T M L 4 的子集并做了扩展。X H T M L 的D T D 都是基于X M L 的, 并且最终的目的是作为各种X M L ) 盘用的粘合剂”,具体地说将现在的H T M I A 规范划分成 不同的子集:例如专门处理文本T e x t 的D T D ,专门处理表格的D T D 等等,并将这些子集 用x M I 觑则重新编写,即所有这些从H 聊L 4 中划分出来的D 1 巾同H T M L 4 中关于各部分 大连理工大学专业学位硕士学位论文 的定义是一致的,不同的是这些D T D 是用X M L 的D T D 定义规则重新编写的,并且加进 了X M L 中的一些优良特性,比如一致性严密性等。 H T M L 与X H T M L 的主要差别是后者的可扩展性。X H T M L 的扩展性试图提供一个定 匍J H T M L 的标准方法,以满足文档或者特殊客户的要求。为了提供可扩展性,X H T M L 是在可结合和扩展元素的子集中定义的,这使得网页设计人员和网页编程人员的工作量 大为降低从记忆大量的H T M D 际记中解放出来,只要为实际的网页内容选择适当的模 块,拥有客户的配置文件信息,网页制作人员在获得这两方面的信息之后就能使开发出 来的网页在客户机上获得广泛的支持。 最初W 3 C 研究X H T M L 的目的是打算让X H T M L 充当各种X M L 语言应用的粘合剂。 例如在一种X M L 应用中可以用X H T M L 结合S V G 标记或其他X M 哳记,如S M I L ,C F M L 。 但是W 3 C 在制定X H T M L 标准的过程中发现X H T M L 可以成为一种标准,使得只要是符合 这个标准制作的W e b 页面就可以用各种浏览器浏览,包括桌面浏览器和各种手持设备, 而且用X H T M L 带I J 作的w c b 页面在遵循少量原则的情况下可以直接用现有的桌面浏览器 浏览,不必为X H T M L 研制专门的浏览器,很容易地就做到了向下兼容。由于X H T M L 是用x M I 规则编写的因此X H T M L 页面的制作要遵守x M L 语法:区分大小写,W i n d o w s 平台下一个页面若是包含 表示这个页面是X M L 页面,浏览器将调用W i n d o w sX M LP a r s e r 解释器显示X M L 页面;任意一个标记都必须有 结束标记相对应;对于空标记要在“ ”前加”;对于所有的属性值都必须用引号引起来 等。 2 3 文档对象模型 D O M 是D o c u m e n tO b j e c tM o d e l 的简称。 D O M 是平台无关,语言无关的标准接口,是X M L 、H T M L 文档互操作的基础f 加1 。 D O M 是给H T M L 和X M L 文件使用的一组A P I 。提供了文件的结构表述,让开发人员 可以改变其中的内容及可见物。其本质是建立网页与S c r i p t 或程序语言沟通的桥梁。 所有w 曲开发人员可操作及建立文件的属性、方法及事件都以对象来展现( 例如, D o c u m e n t 就代表“文件本身”这个对象,T a b l e 对象则代表H T M L 的表格对象等等) 。 这些对象可以由当今大多数的浏览器以S c r i p t 来取用。 一个用H T M L 或X H T M L 构建的网页也可以看作是一组结构化的数据,这些数据 被封在D O M 中,D O M 提供了网页中各个对象的读写的支持。 东软通用数据处理系统的设计与实现 2 4A j a x 技术 A j a x 是A s y n c h r o n o u sJ a v a S c r i p ta n d X M L 的缩写。A j a x 并不是- - I “ 7 新的语言或技术, 实际上是几项技术按一定的方式组合在一在同共的协作中发挥各自的作用。A j a x 建立在 现有的一些W e b 技术基础之上,如J a v a S c r i p t 、H T M L 和C S S ,可以与任何服务器端语 言结合使用【2 1 l 。A j a x 为交互较多,频繁读数据,数据分类良好的W e b 应用提供了一个 很好的解决方案。 要了解A j a x 技术,首先需要简单介绍J a v a S c r i p t 。X H T M L 和H T M L 特别适合生成 静态W e b 页面,但无法设计动态地响应用户输入的页面,而J a v a S c r i p t 能够动态的响应 用户输入【吲。J a v a S c f i p t 是一组编程命令和指令,主要是用于增强网页的操作。将 J a v a S c f i p t 的命令编入一个网页,可以根据程序改变网页的外观、根据系统的需求对网 页的内容进行插入和删除、控制w e b 服务器的操作、与在线数据库进行通信、甚至执 行一个曾经和C G I 通信相连的任务;而且,J a v a S c r i p t 已经成为实现网页的调入根据程 序生成并且对用户事件( 如鼠标移动、单击关联内容或提交窗体等) 做出反应,对会话 期间用户的信息进行跟踪。 J a v a S c f i p t 分为两个具有特性的部分或者说两个版本:服务器端J a v a S c r i p t 和客户端 J a v a S c f i p t 。前者用于描述在W e b 服务器上运行的程序,而后来则描述在W e b 浏览器上 运行的程序。从语法上来说是相同的,只是被设计成用来执行不同的任务。J a v a S c r i p t 语言继承了很多J a v a 语言的传统,而J a v a 语言是S u nM i c r o s y s t e m s 开发的分布式互联 网编程工具。实际上,J a v a S c r i p t 的语法及命令结构与J a v a 相同。不同的是,J a v a 是一 种强类型语言,一种高级解析语言;而J a v a S c r i p t 则不要求如此强的类型声明及类型的 检查。J a v a S c r i p t 是一种解释性语言。即J a v a S c r i p t 不需要解析器进行预解析,命令在程 序被执行时才转化为可执行代码。J a v a S c r i p t 是解释执行的,即在程序运行前不进行解 析,就有可能会产生错误的脚本而且将之发布于W e b 上。因此,在将一个含有J a v a S c r i p t 程序的公用网页发布之前必须要进行彻底的测试,否则用户将可能由于脚本中的错误而 碰到浏览器产生的令人烦恼的错误信息,从而导致该网页的失败。 A j a x 实际上是传统W e b 应用程序的一个转变。以前是服务器每次生成H T M L 页面 并返回给客户端( 浏览器) 。在大多数网站中,很多页面中至少9 0 都是一样的,比如: 结构、格式、页头、页尾、广告等,所不同的只是一小部分的内容,但每次服务器都会 生成所有的页面再返回给客户端,这无形之中是一种浪费,不管是对于用户的时间、带 宽、C P U 耗用,还是对于I S P 的高价租用的带宽和空间来说
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年食品药品监管考试模拟题发布
- 2025年建筑工程管理职业技能鉴定高级模拟题及答案
- 2025江苏省建筑安全员《A证》考试题库及答案
- 2025年环保工程师面试宝典环境治理技术与项目管理预测题
- 2025年软件架构设计师高级面试指南与模拟题集
- 2025年陪诊师考试题库及答案
- 2025年建筑设计师面试预测题库及实战模拟题集
- 2025年医院医疗技术人员招聘笔试全面解读及模拟题
- 桑德拉潜水艇销售课件
- 2025年陪诊师考试题目及答案
- 充电宝市场调研报告
- 小学音乐教师业务考试试题
- 2023年黔西市社区工作者招聘考试真题
- SH∕T 3073-2016 石油化工管道支吊架设计规范
- 中建幕墙工程专项施工方案
- 无诉讼仲裁承诺书(共7篇)
- 饮用水源应急预案(三篇)
- 护理科研选题与论文写作
- YY/T 0086-2020医用冷藏箱
- LY/T 2246-2014森林消防专业队伍建设和管理规范
- 会展项目管理教材 课件
评论
0/150
提交评论