




已阅读5页,还剩65页未读, 继续免费阅读
(计算机软件与理论专业论文)b2c电子商务系统通用开发模型的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
重庆大学硕士学位论文中文摘要 摘要 2 0 0 3 年m m 提出了“随需应变”电子商务的总体框架和概念,为电子商务的发 展指明了发展方向,灵活可变是其特点之一。而对于b 2 c 电子商务系统而言,当 前的开发模型并不能很好地实现b 2 c 电子商务系统的灵活可变,即在不对系统进 行二次开发的前提下,不能够让用户简单、方便、灵活地改变网页功能和表现形 式以及网站的结构。为此,本论文提出了一种b 2 c 电子商务系统通用开发模型, 取名叫“变色龙。 “变色龙”形象反映了b 2 c 电子商务系统通用开发模型的设计目标,即通用开 发模型设计的网站可以适应所有的b 2 c 电子商务应用环境,并且可以动态改变, 而所有需要用户进行的操作都是简单易行的。为此,本文主要做了以下几方面的 研究工作: ( 1 ) 分析典型b 2 c 电子商务系统的组成部分,为通用开发模型的研究与设计 划定了问题域的范围。 ( 2 ) 针对存储和处理b 2 c 电子商务系统中各种不同数据结构数据的问题,提 出了可变实体存储处理模型,实现了各种不同数据结构数据的统一存储和处理, 在数据库一层实现了通用性。其基本思想是在关系数据库的基础上引入x m l ,利 用x m l 来统一描述不同实体的属性集,从而将实体都抽象成( i d ,外码集,属性 集) 的形式。可变实体存储处理模型是通用开发模型存储处理商业数据的基础。 ( 3 ) 将b 2 c 电子商务系统的组成归纳成三方面的元素,即素材、多级列表和 构件,并且将网页内容与网页样式分离,网页与网页间的导航关系分离,由此提 出了通用开发模型的体系结构。其中,对于模型体系结构的核心组成部分w 曲 应用框架,则用j s f 框架为基础,从自定义组件封装构件和组件渲染两方面进行 扩展充实,以实现之。这样,就实现了模型的通用性、易变性和模块间的松散耦 合。 ( 4 ) 根据所提出的通用开发模型的体系结构和w e b 应用框架,运用相关技术, 开发了相应的演示程序,从而验证了通用开发模型是切实可行的。 最后在总结全文的基础上,提出了若干有待进一步深入研究和探讨的问题。 关键词:通用开发模型,可变实体存储处理模型,j s f 扩展,x m l 相关技术 重庆大学硕士学位论文英文摘要 a b s t r a c t i n2 0 0 3 ,i b mi n t r o d u c c dt h ef r a n l e w o r ka n dc o n c e p to fe - b u s i n e s so nd e m a n d , w h i c hd i r e c t e dt h ed e v e l o p m e n to fe - b u s i n e s s i th a sm a n ym e r i t sa n do n eo ft h o s ei s f l e x i b l ea n dv a r i a b l e h o w e v e r ,f o rb 2 ce - b u s i n e s s ,c u r r e n td e v e l o p m e n tm o d e ld o e s n o tf i tt oc r e a t ef l e x i b l ea n dv a r i a b l es y s t e m t h a ti st os a y , w i t h o u tr e d e v e l o p i n gs y s t e m , i ti sn o ts i m p l e ,c o n v e n i e n to rv a r i a b l ef o ru s e r st oc h a n g et h ef u n c t i o na n ds t y l eo ft h e w e bp a g e sa n dt h es t r u c t u r eo ft h ew e bs i t e s ot h i sd i s s e r t a t i o np r o p o s e sag e n e r a l d e v e l o p m e n tm o d e l i nb 2 c e - b u s i n e s s , w h i c hi sn a m e d a n o l e ” a n o l e s t a n d sf o rt h ed e s i g nt a r g e to ft h eg e n e r a ld e v e l o p m e n tm o d e li nb 2 c e - b u s i n e s s t h ed e s i g nt a r g e ti st h a tt h ew e bs i t ed e v e l o p e db yt h eg e n e r a ld e v e l o p m e n t m o d e ls h o u l db es u i t e df o ra l lv a r i e dc o n d i t i o n so fb 2 ce b u s i n e s sa n ds h o u l dh a v e c a p a b i l i t yo fc h a n g i n gi nr a n t i m e m o r e o v e r i ts h o u l db ee a s yf o ru s e r st od e v e l o pa n d c h a n g et h ew e bs i t e a c c o r d i n g l y , t h em a i nc o n t e n t so fr e s e a r c ho nt h eg e n e r a l d e v e l o p m e n tm o d e li nb 2 c e - b u s i n e s sa r ed e s c r i b e da sf o l l o w s : ( 1 ) a n a l y z et h en e c e s s a r yp a r t so fc l a s s i cb 2 ce - b u s i n e s ss y s t e m ,w h i c hd r a w st h e d e m a r e a t i o no f c o n c e r n e di s s u e si nr e s e a r c h ( 2 ) i n t r o d u c e ac h a n g e a b l ee n t i t y s t o r i n ga n dp r o c e s s i n gm o d e lt o s o l v et h e p r o b l e mo fs t o r m l ga n dp r o c e s s i n gt h ev a r i e dd a t as t r u c t u r ei nb 2 c e - b u s i n e s ss y s t e m i t u n i f i e st h es t o r i n ga n dp r o c e s s i n go fv a r i e dd a t as l l l c r l r ea n da c h i e v e st h eg e n e r a l f e a t u r eo nd a t a b a s el e v e l n l eb a s i ci d e ai su s i n gx m lb a s e do nt h er e l a t i o n a ld a t a b a s e t od e s c r i b et h ep r o p e r t ys e to fv a r i e de n t i t ya n da b s t r a c t i n gt h ee n t i t yt ot h ef o r m a to f ( i d ,f o r e i g nk e ys e t , p r o p e r t ys e t ) t h ec h a n g e a b l ee n t i t ys t o r i n ga n dp r o c e s s i n gm o d e l i st h eb a s eo fs t o r i n ga n dp r o c e s s i n gb u s i n e s sd a t ai ng e n e r a ld e v e l o p m e n tm o d e l ( 3 ) d i v i d et h ei n g r e d i e n t so fb 2 ce - b u s i n e s ss y s t e mi n t ot h r e ec a t e g o r i e s : r e s o u r c e s ,m u l t i l e v e ll i s t sa n dc o m p o n e n t s i ta l s os e p a r a t e st h es t y l e so fw e bp a g ef r o m t h ec o n t e n t sa n ds e p a r a t e st h er u l e so fn a v i g a t i o na m o n gw e bp a g e sf r o mw e bp a g e t h u s i ti n t r o d u c e st h es l r u e t u r eo f t h eg e n e r a id e v e l o p m e n tm o d e l n ew e ba p p l i c a t i o n f r a m e w o r k ,w h i c hi st h ec o r eo f t h es t r u c t u r eo f t h em o d e l ,i sr e a l i z e db ye x t e n d i n gt h e j s ff r a m e w o r ki nc u s t o m i z e dc o m p o n e n t se n c a p s u l a t i n gf u n c t i o na n di nc o m p o n e n t r e n d e r i n g t h e r e f o r e ,i ta c h i e v e st h eg e n e r a l ,v a r i a b l ef e a t u r ea n dr e l a x e dc o u p l i n g a m o n gc o m p o n e n t s ( 4 ) d e v e l o pt h ed e m o n s t r a t i o no ft h eg e n e r a id e v e l o p m e n tm o d e lf o l l o w i n gt h e 重庆大学硕士学位论文 英文摘要 s 1 舶l c t i ma n dw e ba p p l i c a t i o nf r a m e w o r kd e s c r i b e db e f o r ea n du s i n gi n t e r r e l a t e d t e c h n o l o g i e s i tp r o o f st h a tt h eg e n e r a ld e v e l o p m e n tm o d e li sf e a s i b l e f i n a l l y , b a s e do nas u m m a r yo ft h er e s e a r c hr e s u l t s ,s e v e r a lq u e s t i o n sf o rf u r t h e r r e s e a r c ha n de x p l o r a t i o na r ep r o p o s e d k e y w o r d s :g e n e r a ld e v e l o p m e n tm o d e l , c h a n g e a b l ee n t i t ys t o r i n ga n dp r o c e s s i n gm o d e l , j s fe x t e n s i o n ,t e c h n o l o g i e si n t e r r e l a t et ox m l i l l 重庆大学硕士学位论文 插图清单 插图清单 图2 ,1 典型b 2 c 电子商务网站概貌图- 5 圈3 1 传统关系数据存储模型和可变实体存储模型的比较1 0 图3 2 实体属性集的x m l 文档的结构一1 1 图3 3 可变实体处理框架的结构1 2 图3 4 实体集的x m l 文档的结构一1 4 图4 1 “变色龙”b 2 c 电子商务系统通用开发模型体系结构18 图5 1j s f 与现有技术之间的关系2 2 图5 2j s f 的请求处理生命周期2 5 图5 3 改进后的j s f 组件渲染流程31 图5 4 “变色龙”b 2 c 电子商务系统通用开发模型的w e b 应用框架r3 1 图6 1 通用开发模型的数据库结构3 4 图6 2 文件上传s e r v l e t 的流程圈3 6 图6 3 多级列衷的表项属性集的x m l 文档结构4 0 图6 4 多级列表录入的流程图4 0 图6 5 网页间导航规则设置的流程图4 1 图6 6 网页,样式表映射关系设置的流程图4 1 图6 7r e s o u r c e c o m p o n e m 输出的x m l 文档结构- 4 3 图6 8r e s o u r c e c o m p o n e n t 组件的流程图4 3 图6 9m u l t i l e v e l l i s t c o m p o n e n t 输出的x m l 文档结构- - 4 6 图6 1 0m u l t i l e v e l l i s t c o m p o n e n t 组件的流程图”4 7 图6 11l i n k c o m p o n e n t 输出的x m l 文档结构一4 9 图6 1 2l i n k c o m p o n c n t 组件的流程图5 0 图6 1 3u s e r l o g i n c o m p o n e n t 输出的x m l 文档结构5 3 图6 1 4u s e r l o g i n c o m p o n e n t 组件的流程图5 3 图6 1 5t r y t o l o g i n l i s t e n e r 事件处理器的流程图5 4 图6 1 6 网页样式处理子模块的流程图一5 6 图6 1 7 网站管理模块界面5 7 图6 1 8 一个实际网页的输出效果5 8 重庆大学硕士学位论文1 绪论 1 绪论 1 1引言 2 0 0 3 年i b m 提出了“随需应交”电子商务的总体框架和概念t 1 】 2 】,其主要特点 是:实时响应、灵活可变、聚焦核心、坚固可靠。对于灵活可变而言,就是企业 可以在需要时快速而轻松地改变自身,以便更好地适应不断变化的商业环境和要 求。这种灵活性将使企业能够降低风险,提高开展业务的效率,改进成本控制、 资金利用效率和财务盈乖j 能力。灵活可变不仅要求企业内部的运作和管理可以变 化,也要求企业对外界的响应和展示也可以变化。 在b 2 c 电子商务营销系统中,购物网站平台是商家与外界环境( 如顾客等) 交互最主要的接口。通用的b 2 c 电子商务系统开发模型是保证购物网站平台灵活 可变的核心,也是实现b 2 c 电子商务系统灵活可变的基础。 1 2b 2 c 电子商务系统开发模型现状 当前电子商务网站的开发都基于分层的体系结构,从早期的两层结构发展为 如今的三层结构,即后端企业数据库层、中间层和客户层。 1 2 1 企业数据库层 当前绝大多数电子商务的应用中都使用关系数据库模型作为企业数据霹的开 发模型。电子商务系统中的数据以实体的形式存放在关系数据表中。关系数据表 具有结构简单、明晰,无冗余数据、操作方便等优点。但在实际的系统开发中, 需要先对应用需求进行分析和建模,抽取应用中的数据实体及其属性,从而创建 关系数据表。这使得当需求改变或者增加了新的数据实体或者数据的属性改变时, 必须重新设计和创建新的关系数据表,无法快速应对需求变化,以满足月户新的 需求。 1 2 2 中间层 中间层简介 中间层封装了系统的应用逻辑,是系统的核心组成部分之。它主要是通过 各种编程语言( 如j a v a 、c + + 等) 所编制的程序来完成数据的处理,实现系统功能。 这部分的发展与程序语言和编程思想的发展密切相关,从结构化的编程语言和编 程思想到面向对象的变成语言和编程思想,继而发展为基于组件的框架模型( 以 m v c 模型为基础的框架为代表) 。 中间层分类 以逻辑层次分类,中间层的实现可以分为:单层实现,即处理数据和显示处 重庆大学硕士学位论文l 绪论 理结果等操作都在一个逻辑单元里实现;多层实现,即由多个逻辑单元来实现系 统功能,各个逻辑单元相对独立、相互协作,共同完成相应的处理任务。当前中 间层的实现以表示层、业务逻辑层、数据访问层的多层实现为主。 三层实现中的表示层实现技术 对于三层实现中的表示层而言,实现的技术有: 1 ) 采用j s p 、a s p 、p h p 等编写动态页面 j s p 【3 】、a s p 、p h p 均是可以在服务器端执行的脚本语言,是继c g i ( 公共网 关接口) 之后出现的新技术。其作用是能够访问数据库,能编程和计算,最终生 成网页。开发人员可以用j s p 、a s p 或者p h p 编写动态网页。其特点是:网页是 动态发布的,即网页的内容是在客户端发出请求时动态生成,其内容可以变化。 其优点是:能够根据数据库数据、客户请求等外界条件动态变化其生成的网页的 内容,网站内容的实效时比较强,并且网站具有交互能力;对于相同性质的一类 网页可以只编写一个脚本文件,简化了编写网页的工作量。其缺点是:只有掌握 了相关知识的专业人员才能进行动态页面的开发,一般用户不易掌握;j s p 、a s p 、 p h p 所实现的动态页面主要体现在网页内容的动态变化上,对于网页的表现形式, 一般动态变化较少,而对于网站的组织结构,则不能变化。也就是说每个动态页 面所要实现的逻辑功能是设计时确定的,并且每个页面之间的相互关系也是设计 时确定的,这在一定程度上限制了网站的灵活性;网站的维护和修改均需要专业 人员的参与。 2 1 由一些i t 公司开发的动态网站制作与管理系统平台 鉴于静态网页的不灵活和动态网页的所需专业知识较强等缺点,一些r r 公司 开发了动态网站制作与管理系统平台。如:中国贸促网【4 】的“网上自助网站生成系 统”、3 6 0 行业信息刚5 】的“动态网站制作与管理系统”等。这些系统的实现原理是, 用户通过浏览器上传包含文字、图片等信息的网页,系统自动为这些网页分配一 个i d 值,从而实现网页的动态更新;同时系统预定义了一些分级导航拦,如产品 信息的分类导航栏,用户通过将某个网页关联到某个分级导航栏的某一项,从而 实现网页之间的关联关系。其优点是:用户可以在不需要太多专业知识的前提下 动态改变网页的内容和表现形式。其缺点是:用户只能提交静态网页,即用户不 能动态改变含有应用逻辑的动态网页;网站的结构是通过分级导航栏进行组织的, 且是预定义的,用户不能动态改变。 3 ) 插入网页并在客户端运行的j a v a s e r i p t 、v b s c f i p t 脚本和f l a s h 对象 这些技术主要是用于增强客户端的应用逻辑的处理能力,提高交互的性能, 并能根据客户端的情况提供一定的个性化服务。但其所操作的内容不可能超出服 务器端所提供的内容。 重庆大学硕士学位论文 1 2 3 客户层 客户层主要有两种模式:“瘦客户端”和“胖客户端”。所谓“瘦客户端”就是指用 户只通过浏览器与应用系统交互,在用户电脑上不运行应用逻辑代码,系统的应 用逻辑主要集中在服务器端。而“胖客户端”则是用户通过在本地运行的应用程序与 系统交互。当前以“瘦客户端”为主要的客户层实现模式。 1 2 4 开发模型现状小结 通过对b 2 c 电子商务开发模型现状的分析,结合“随需应变”电子商务的特点 及要求,我们可以看到,当前的开发模型并不能很好地实现b 2 c 电子商务购物网 站平台的灵活可变,即在不对系统进行二次开发的前提下,不能够让用户简单、 方便、灵活地改变网页功能和表现形式以及网站的结构。 1 - 3 论文的选题及其研究意义 本课题就是提出一个b 2 c 电子商务系统的通用开发模型,并利用此模型作为 开发工具使得用户能够通过浏览器简单灵活地定义功能模块、设置网站的结构 和页面的内容、表现形式。即让用户不仅能够创建自己所需的网站,而且可以避 免涉及到复杂的业务逻辑编程,满足b 2 c 电子商务购物网站平台对网站结构、弼 页功能、表现形式的灵活可变的要求,真正做到“随需应变”。 通过本课题的研究,可以在以下几个方面有所创新: 实现各种不同格式的数据、特别是数据结构需要动态变化的数据的统一 数据存储模型; 实现b 2 c 电子商务的业务流程中,功能模块的可定制; 实现网站结构的动态改变: 实现网页功能和网页表现样式的动态改变。 利用b 2 c 电子商务通用模型及其开发工具,可以有如下的实用意义: 用户无需专业技术就可以构建自己所需的b 2 c 电子商务网站,不需要 专业人员开发,节省了开发成本,缩短了开发周期,并能充分展现用户 的建站意图: 业务功能模块的可定制,在一定程度上满足了用户对业务改变的需要; 网站的结构和外观在运行时可以动态修改,可以满足“随需应变”电子商 务灵活性的要求,及时准确地反映商家销售策略在网站展示方面的要 求,也可以满足顾客对“个性化”的要求; 通过浏览器界面进行网站的设置,不需要较高成本来部署开发工具,并 且不需要开放服务器权限,因而安全性较高。 由此可见,研究b 2 c 电子商务通用模型,具有较高的学术意义和实用价值。 由此可见,研究b 2 c 电子商务通用模型,具有较高的学术意义和实用价值。 重庆大学硕士学位论文l 绪论 1 4 论文研究的主要内容 本文主要的研究内容包括: 分析和概括b 2 c 电子商务网站的网站组成; 建立针对b 2 c 电子商务网站的通用数据存储模型,实现“素材库”( 所 谓“素材”就是指建立网站所用到的图片、声音、图像、公司介绍、产品 展示等信息) : 实现基于组件的w e b 应用框架,将网站的功能模块封装成组件,并使 组件能够通过配置文件的形式动态加载,从而实现“构件库”( 所谓“构 件”就是指封装了一定业务逻辑功能的功能模块,比如用户登录模块, 用户可以方便地选取所需的构件并放到合适的网页中) ; 定义网页组成描述文件的格式,以便描述每个网页由哪些素材、构件组 成: 实现链接的动态配置,以便实现网站结构的动态改变: 引入页面数据与页面样式相分离的机制,通过样式的动态变化实现页面 表现形式的动态变化; 建立一个基于浏览器的用户管理晃面,使用户能够通过浏览器配置网 站。 本文的组织结构如下:第一章介绍b 2 c 电子商务系统开发模型的现状,分析 了传统的b 2 c 电子商务系统开发模型对于“随需应变”电子商务的局限性;第二章 分析典型b 2 c 电子商务网站的组成;第三章介绍通用开发模型数据存储处理的基 础可变实体存储处理模型;第四章介绍了通用开发模型的体系结构,并逐一 介绍了各子模块的功能;第五章介绍了如何实现通用开发模型的核心组成部分 w 曲应用框架;第六章详细描述了通用开发模型的实现,对其中的关键技术 做了论述;第七章是论文的最后一部分,总结了论文的工作,并指出了进一步工 作的方向。 1 5 本章小结 本章首先介绍了b 2 c 电子商务系统开发模型的现状,指出了其对于“随需应 变”电子商务的局限性。然后论述了b 2 c 电子商务系统通用开发模型的研究意义。 最后阐述了本文的主要研究内容和各章节的内容安排。 4 重庆大学硕士学位论文2b 2 c 电子商务系统组成分析 2 b 2 c 电子商务系统组成分析 2 1 选取典型的b 2 c 电子商务系统 在开始设计通用开发模型之前,首先对b 2 c 电子商务系统的组成进行分析。 分析对象的选取范围是主流的、大型的、有代表性的b 2 c 电子商务网站。本文选 取的对象是易趣网( 中国最大的网上购物网站之一,h t t p :w w w e b a y c o m c n ) 、亚 马逊网( 互联网零售业巨头之一,h t t p :w w w a m a z o n c o r n ) 、卓越网( 中国最大图 书音像商城,h t t p :w w w j o y o c o r n ) 和当当网( 中国最大的网上购物网站之一, h t t p :w w w d a n g d a n g c o r n ) 。上述网站都是运作成功的b 2 c 电予商务网站,也是 b 2 c 电子商务网站的典型代表,其首页概貌图如图2 1 所示。 易趣网站首页 卓越网站首页 亚马逊网站首页 当当网站首页 图2 1 典型b 2 c 电子商务网站概貌图 f i g u r e2 1 o u t l i n e so f t h er e p r e s e n t a t i v eb 2 ce - b u s i n e s sw e bs i t e s 2 2b 2 c 电子商务系统的组成 分析这些网站,我们可以得到以下的一些b 2 c 电子商务系统的共性;b 2 c 电 5 重庆大学硕士学位论文 2 b 2 c 电子商务系统组成分析 子商务系统主要是一个由多个相互关联的网页组成有机整体的网站,这些网页的 组成部分可以分为两大类:素材和功能模块。 其中素材包括图片、声音、动画、图像、f l a s h 对象等,主要用于美化网页和 做广告宣传,其特点是素材内容本身是静态的,可以以文件的形式存放。 而功能模块则体现了网站所具有的功能,这些功能包括: 导航栏,即用于指向网站特定内容的链接的集合。t e 如,网站首页顶部 的页面导航栏,它指示了网站的主要组成部分,像b 2 c 电子商务网站 一般就有买商品、客户管理等内容,通过链接跳转的方式,用户可以很 方便地由导航栏转到感兴趣的内容网页。此外,商品分类信息栏也可以 属于导航栏的范畴,因为通过商品分类信息栏的跳转,用户可以方便地 浏览到感兴趣的商品信息网页。导航栏的特点是具有树状层次结构的链 接的集合,链接的属性具有相似性,即都指向某个特定的页面。 普通信息。这一部分包括公司或者网站介绍、b 2 c 商品交易协议的声明、 网站使用的帮助信息等内容。其特点是内容都是静态的,并且时效性不 强,即内容的更新比较缓慢,因此可以采取静态文件的方式存放。 即时信息。这包括两站新闻、商品折扣信息、系统广播信息等。其特点 是内容更新比较快,信息量相对比较大,需要在系统运行时动态发布。 商品信息。这是b 2 c 电子商务网站所含数据的主要组成部分。它的特 点是商品种类繁多,不同种类的商品往往具有不同的属性或技术指标, 比如电脑显示器有外观尺寸、最大分辨率、刷新频率等技术指标,而 c p u 则有时钟频率、缓存大小、工艺等技术指标。有时需要按属性或 者技术指标分类显示商品信息,或者对不同商品的同一个技术指标进行 横向比较,这就需要将商品信息按某种规则分门别类的存放,而不是将 信息统统存放在一起。 顾客管理及安全认证。b 2 c 电子商务的商品交易需要建立在交易双方彼 此信任的基础上,这就需要对购买商品的顾客进行管理,并在交易时进 行安全认证。这包括顾客注册、顾客信息管理、顾客登录验证、交易过 程中顾客身份的确认等。 商品交易。这部分包括顾客选购商品,即购物车,订单生成和确认,货 款支付和商品交付等。其中货款支付和商品交付,有些网站实行在线支 付货款、邮递商品的方式,而有些网站实行线下支付货款和交付商品的 方式,即在电子商务系统中不考虑这部分功能。由于货款支付和商品交 付不是b 2 c 电子商务系统的必要组成部分,故在本文中不再考虑,系 统中商品的交易过程到生成并确认订单为止。 6 重庆大学硕士学位论文 2b 2 c 电子商务系统组成分析 附加功能,即b 2 c 电子商务系统为了方便顾户购买商品或者为了方便 商家推销商品而提供的扩展功能。这包括商品和其它信息的搜索,更好 地展示商品,如将商品的图片放在醒e l 的位置,从而吸引顾客的注意, 等等。这些功能随着具体网站的不同而不同。 2 3 本章小结 本章分析了典型b 2 c 电子商务系统的组成,为通用开发模型的研究与设计划 定了问题域的范围,这将作为后面章节中设计b 2 c 电子商务系统通用开发模型的 依据。 重庆大学硕士学位论文 3 可变数据结构存储处理模型 3 可变数据结构存储处理模型 3 1 基础知识 3 1 1x m 吐 x m l t 6 是基于文本的标记语言,它正迅速成为w e b 领域数据表示和数据交换 的标准。它与h t m l 语言一样,也是用标签( 用一对尖括号括起来的标识符,形 如 ) 来标识数据。但与h t m l 的不同之处是,x m l 的标签并不指定数据该 如何显示。可以使用相同的方式来定义数据结构中字段的名称,可以对给定的应 用程序使用任意的x m l 标签,因此对于需要相互交互的应用程序丽言,应该统一 它们所使用的x m l 标签。 每一个标签可以包含属性。属性是放在尖括号之间的标签组成部分之一,用 于提供附加信息。属性的格式是属性名后面接上等号和属性值,多个属性之间用 空格分隔。 x m l 文档必须是格式规范化的,因此开始标签 与结束标签 必 须成对出现,或者使用空标签c i ) d o ( 伶。 x m l 可以有以下几方面的用途: 传统的数据处理,即数据用订l 编码,并被程序处理; 文档驱动的编程模式,即用x m l 文档封装已有的组件,作为组件与外界 交互的接口; 将x m l 文档与d t d 或者x m ls c h e m a 等x m l 文档结构定义文件绑定, 则可以利用现成的工具或程序对x m l 文档所包含的数据进行验证、处理 等操作。 总之,x m l 是一种非常简单的语言,但又提供了很强的灵活性。它独立于各 种不同的计算机系统,为各种不同的数据提供了一种通用的表示语言。 3 1 2x q u e r y x q u e r y t 7 卜嘲工作组于1 9 9 9 年9 月正式成立,其任务是创建一种灵活的查询语 言以便从x m l 文档中抽取数据。目前w 3 c 所公布的最新x q u e r y 草案是2 0 0 4 年 l o 月2 9 目的版本,它还在不断的修订和完善之中。作为一种新型的查询语言, x q u e r y 汲取了其它多种查询语言的优点,适用于各种类型的x m l 数据源的查询, 不仅查询功能强大,而且简洁灵活且易于实现。而且,x q u e r y 还具有从多种数据 库中检索信息的特点,它能对各种数据和文档进行查询。 x q u e r y 构建在x p a t h 规范之上,其核心是能够通过x p a t h 表达式从文档选择 特殊的节点序列。x q u e r y 是一种将查询表示成表达式的功能语言。通过它所支持 重庆大学硕士学位论文 3 可变数据结构存储处理模型 的多种表达式,它的查询可以有各种不同的形式。各种x q u e r y 表达式可以完全嵌 套,也支持予查询。目前,数据库业界的三大主流厂商o r a c l e 、i b m 、m i c r o s o f t 都已经在各自的产品中提供了对x q u e r y 规范的支持。 x q u e r y 中最强大的特性是f l w o r 表达式( 发音为f l o w e r ) ,它是一种典型的 能够完成具有某种实际意义的查询的表达式。f l w o r 表达式包含模式匹配、过滤 选择和结果构造这三种操作。f l w o r 语句是x q u e r y 所具有的最接近于s q l 的语 句。f l w o r 表达式是由f o r - l e t - w h e r e - o r d e rb y r e t u r n 五个关键字定义的子句构成 的。它支持迭代并且可以把变量绑定到中间结果。对两个或多个文档进行连接和 重构数据时这种表达式非常有用。每个f l w o r 表达式都有一个或多个f o r 子旬、 一个或多个l e t 子旬、一个可选的w h e r e 子旬、一个o r d e rb y 予句以及一个r e t u r n 予句。f o r 子句通过将节点绑定到变量,以便继续去循环遍历序列中的每一个节点; 1 e t 子句为一个变量赋一个值或一个序列:l e t l l r n 子句定义每个元组要返回的内容; 对于w h e r e 子句,如果其有效布尔值为真,那么该元组就被保留,并且它的变量 绑定用在r e t u r n 子句中,如果其有效布尔值为假,那么该元组就被废弃。 目前在最新的x q u e r y1 0 标准草案中,还没有定义用于更新x m l 文档中元 素的语法,但这方面的研究进展很快,一些n a t i v ex m l 数据库产品都已在各自的 产品中提供了更新的功能。 总之,x q u e r y 对只需处理x m l 数据或者需要同时处理x m l 和关系数据的 x m l 程序员来说是最好的选择。 3 2 可变实体存储模型 在分析典型b 2 c 电子商务系统的组成时,我们发现有些数据的数据结构是不 确定的。比如商品信息,不同的商品可以有不同的技术指标。在此,我们引入一 种在关系数据存储模型的基础上演变而来的数据存储模型可变实体存储模型 【l o 】。为便于问题的讨论,我们将可变数据结构定义为可变实体。 定义l对于某个实体,如果其属性集可以在系统运行时动态改变,则该实体 为可变实体。而把在每一时刻都具有相同属性集定义的一类可变实体,称为可变 实体集。 实体在关系数据库中的表示是:一张二维表表示一个实体集,其中表的每一 行表示一个实体,表的每一列表示实体的一个属性( 如图3 1 ( a ) 所示) 。为了反映 实体的具体属性,这张二维表的结构在系统设计时就要有明确的定义,比如二维 表有哪些列、每列代表什么含义等。这种存储模型很难在系统运行时动态的改变 表结构,因此不便存储可变实体。 9 重庆大学硕士学位论文 3 可变数据结构存储处理模型 p 向变实体劓 l 、 ( a ) 传统的关系数据存储模型 实体1 实体2 实体m 可变实体l 可变实体z 可变实体m ( b ) 可变实体存储模型 图3 1 传统关系数据存储模型和可变实体存储模型的比较 f i g u r e3 1c o m p a r i s o nb e t w e e nt r a d i t i o n a lr e l a t i o n a ld a t as t o r i n gm o d e l a n dc h a n g e a b l ee n t i t ys t o r i n gm o d e l x m l 是一种结构化的语言,其优点之一就是通过标记可以实现很好的易变性, 这正好有利于解决传统关系数据存储模型不便存储可变实体的问题。通过将x m l 融入到关系数据库中,就得到了可变实体存储模型。该模型的主要思路是:用x m l 来表示实体的属性集,利用其易变性来反映实体属性的变化,然后将x m l 存放在 关系数据库相应实体的二维表的一个固定列中。这样,当实体属性发生改变时, 只需要改变x m l 的内容,而不需要改变二维表的表结构,从而方便地实现了可变 实体的存储。该模型的结构如图3 1 ( b ) 所示。 从图3 1 ( b ) 可看出,在该模型中一个可变实体集仍然由一张二维表表示,表的 每一行表示一个可变实体。二维表的列由三部分组成:i d ( 可变实体的唯一标识, 作为实体的主码) 、外码集( 包含零个或多个列,用于存放与该实体集相关的其它 实体的外码) 和属性集( 一个固定列,用于存放可变实体属性集的x m l 文档) 。 其中实体属性集的x m l 文档 和 两种元素构成( 如图3 2 所示) 。文档的根节点是 元素,它表示了实体的属性集;它的子节点 是由零个、一个或多个 元素组成的序列,每个 元素表示实体 的一个属性,其中 元素有三个属性:h 1 a m e 、“t y p e ”和“n u l l a b l e ”,分别 表示属性的名称、取值类型和是否允许为空;而 元素的值就是实体属性 的值。这里要求实体属性值只能是简单数据类型,如布尔值、整数、实数、字符 串、日期等。 1 0 重庆大学硕士学位论文 3 可变数据结构存储处理模型 图3 2 实体属性集的x m l 文档的结构 f i g u r e3 2t h ex m ls t r u c t u r eo fe n t i t yp r o p e r t ys e t 用x m ls c h e m a u 1 【1 3 】对实体属性集进行规范化定义,如下所示。 x s :r e s t r i c t i o n b a s e = ”x s :s t r i n g ”b 3 3 可变实体处理框架 由于在可变实体存储模型中,实体的属性存放在x m l 文件中,因此不能直接 用s q l 来操纵实体数据。为此,我们引入可变实体处理框架来完成可变实体的存 储、访问和修改操作。可变实体处理框架由4 个部分组成,其结构如图3 3 所示。 窜 b薷熏 重庆大学硕士学位论文 3 可变数据结构存储处理模型 一可菱要顿疆框椠 外 l 扒 部 w 应 用 l 创建、查询和i l 堡壁圣重毒墓 嚣# f 属性集的定义r := 、也 图3 3 可变实体处理框架的结构 f i g u r e3 3 s t r u c t u r eo fc h a n g e a b l ee n t it yp r o c e s sm o d e l 可变实体属性集的定义、查询和修改 该部分根据属性集的x m l 格式定义,按照外部应用的要求,创建和修改某个 可变实体的属性集定义,并将属性集定义存放在关系数据库中,当需要时,也可 从关系数据库中读出属性集定义的内容。 可变实体数据的录入 该部分根据属性集的定义,与外部应用交互,创建相应的可变实体数据,并 存入关系数据库中。存入操作用s q l 中的i n s e r t 语句。 可变实体数据的修改和删除 该部分用于对某个具体的可变实体进行修改和删除操作。定位要操作的可变 实体,需要给出该可变实体的i d 。如果需通过可变实体的属性进行定位,则需要 先通过查询得到可变实体的i d ,再进行操作。修改操作用s q l 中的u p d a t e 语 句完成,而删除操作用s q l 中的d e l e t e 语句完成。 可变实体数据的套询 该部分是根据输入的查询条件得到需要的可变实体信息,这是处理框架中最 重要的部分。为了满足用户需要,可变实体处理框架对以往在关系数据库中进行 查询操作的s e l e c t 语句进行了扩充,加入了x m l 的查询语言x q u e r y 。 为便于说明,我们对以下符号进行约定:“e n t i t y 表:“e n t i t yt a b l en ,代表第n 个可变实体集或非可变实体集的二维表,当多表查询 重庆大学硕士学位论文3 可变数据结构存储处理模型 时使用;“i d 代表可变实体的d 列的列名;“f o r e i g n _ k e yn 代表可变实体的第n 个外码列的列名;“x x x ,代表某个具体的数值,其数据类型根据上下文意思确定。 以下,我们将分三种情况介绍可变实体数据的查询和处理策略。 a 、查询条件中不包含可变实体的属性 此时可以直接用s e l e c t 语句根据实体i d 进行查询。形式如: s e l e c t f r o me n t 时t a b l ew h e r ei d - - - x x x 或者
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业自动化技术及其应用前景分析
- 工业设计与文化传承的融合
- 工业风装修设计与施工实战
- 工作效率与情绪管理技巧
- 工业设备节能减排方案
- 工作效率提升的软硬件工具选型
- 工厂作业现场的安全管理策略研究
- 工作报告编写技巧及范例
- 工厂安全生产标准化建设与实践
- 工程测量中的新技术应用
- 危险化学品-经营安全管理制度与岗位操作流程
- (2025)党内法规知识测试题库及答案
- 大洲大洋说课课件
- 招聘心里测试题及答案
- 高校教师资格证考试《高等教育学》真题及解析(2025年新版)
- T/SHSOT 015.1-2024皮肤角质层胶带剥离方法及应用第1部分:角质层剥离方法
- 上海市静安区2023-2024学年八年级下学期期末语文试题(解析版)
- 2025年中医基础理论考试试题及答案
- 【MOOC】大学物理 I-(力学、相对论、电磁学)-北京交通大学 中国大学慕课MOOC答案
- 《建筑基坑工程监测技术标准》(50497-2019)
- 一种基于SG3525的半桥高频开关电源
评论
0/150
提交评论