(计算机应用技术专业论文)一个基于web的工作管理系统的设计与实现.pdf_第1页
(计算机应用技术专业论文)一个基于web的工作管理系统的设计与实现.pdf_第2页
(计算机应用技术专业论文)一个基于web的工作管理系统的设计与实现.pdf_第3页
(计算机应用技术专业论文)一个基于web的工作管理系统的设计与实现.pdf_第4页
(计算机应用技术专业论文)一个基于web的工作管理系统的设计与实现.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

(计算机应用技术专业论文)一个基于web的工作管理系统的设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

卜 二 二 心 硕士学位论文 ma s t e r s t i i e s i s ab s t r a c t i n r e c e n t y e a r s e n t e r p r i s e s h a v e b e e n i n m o r e d e m a n d f o r t h e m a n a g i n g i n f o r m a t i o n b y i n t e rne t s i n c e t h e r a p i d d e v e l o p m e n t o f i n t e r n e t a n d t h e i m p r o v e m e n t o f e c o n o m y g l o b a l i z a t i o n . mo s t o f ma n a g e m e n t i n f o r m a t i o n s y s t e m s a r e u p gr a d i n g f r o m d e s k t o p a p p l i c a t i o n t o n e t a p p l i c a t i o n . t h e s t r u c t u r e o f s y s t e m i s u p gr a d i n g f r o m c / s t o b / s . t h e d e s i g n b a s e d o n w e b i s b e c o m i n g t h e c o m m o n s t a n d a r d o f ma n a g e m e n t i n f o r m a t i o n s y s t e m . u t i l i z i n g m o r e s c i e n t i f i c a n d a d v a n c e d t e c h n o l o g y t o d e v e l o p t h e n e w g e n e r a t i o n o f ma n a g e m e n t i n f o r m a t i o n s y s t e m t h a t s a t i s f i e s t h e d e m a n d o f e n t e r p r i s e s n o w h a s b e e n a n e m e r g e n t q u e s t i o n . t h i s t h e s i s i s b a s e d o n t h e p r o j e c t we b j o b ma n a g e m e n t s y s t e m o f l o t o n s c o m p a n y t h a t t h e a u t h o r j o i n e d . t h i s p r o j e c t i s d e s i g n i n g a ma n a g e m n t i n f o r m a t i o n s y s t e m b a s e d o n w e b f o r l o t o n s c o m p a n y . i n t h e p r o j e c t t h e a u t h o r r e a l i z e d t h e g o a l s o n t h e w h o l e a s o n e o f t h e m a j o r d e s i g n e r s b y o o a ( o b j e c t o r i e n t e d a n a l y s i s ) , o o d ( o b j e c t o r i e n t e d d e s i g n ) , u m l ( u n i f i e d mo d e l i n g l a n g u a g e ) , a s p .n e t a n d c o d i n g b y c # . t h e s y s t e m h a s e m b o d i e d t h e f o l l o w i n g c h a r a c t e r s : s a f e , s i m p l e t o c o n t r o l , e f fi c i e n t i n r u n n i n g a n d e a s y t o m a i n t a i n . a s r n e t i s a n e w g e n e r a t i o n o f t e c h n o l o g y o n t h e .n e t . i t h a s m a n y a d v a n t a g e s s u c h a s b a s i n g o n m o d u l e a n d g r o u p w a r e , s e p a r a t i n g t h e c o d e s fr o m p a g e s , i m p r o v i n g t h e e ff i c i e n c y o f i m p l e m e n t . o o a i s a p i ( i n t e r n e t s e r v e r a p i e x t e n s i o n ) 执行时效率较高, 但 i s a p i 提供的服务较少,如它不支持s e s s i o n 等; a s p ( a c t i v e s e r v e r p a g e )由于 开发方式简单,是开发w e b 应用程序的后起之秀,应用面很广。但a s p 采用 的是直译式语言,执行时得耗费一些时间进行解释的操作,故其执行效率较 低。随着i n t e r n e t 环境的不断变化,2 0 0 0 年底,微软推出新一代i n t e r n e t 开发平台 一m i c r o s o f t . n e t , 并且在平台上推出了新的. n e t f r a m e w o r k , 通过 c o m m o n l a n g u a g e r u n t i m e执行应用程序达到重复使用、 易维护的目 的。 在 新的架构中, . n e t 强调语言归语言, 系统归系统。 a s p . n e t 是. n e t 平台上的 新技术, 它不是a s p 的简单升级, 而是m i c r o s o f t 推出的新一代a c t i v e s e r v e r p a g e s . a s p . n e t 提高了执行效率、 解决了a s p 的不稳定性以 及难以 维护的问 题,而且提供更模块化的设计方式,实现了面向对象的设计。 本文以该项目 为背景, 对系统的总体设计思想、系统分析、系统设计等 方面进行了比较细致深入的研究, 尝试在新一代. n e t 平台上, 采用面向对象 的方法,用统一模型语言建模,借助a s p . n e t 技术开发w e b 管理系统,实现 企业信息的网络化管理。 1 .2 管理信息系统架构概述 管理信息系统( m a n a g e m e n t i n f o r m a t i o n s y s t e m s 简称m i s ) 在 现代社会 己深入到各行各业。由于计算机技术的迅速发展和普及, mi s事实上己成为 计算机mi s o 现代企业中已存在的mi s 存储着企业的经营管理业务数据, 对企业的经 营运作起着关键作用。 但在过去, 企业己 有的m i s 往往是分散在企业内部各 处,没有实现信息共享和网络化集中 管理, 系统维护成本居高不下, 业务流 程难以 协调一致,管理数据相对分散。随着企业规模的扩大和业务复杂程度 的提高, 数据网络化集中管理已 是m i s 发展的一个重要方向。 1 .2 . 1 c / s 结构的mi s 传统的管理信息系统建立在局域网 ( l a n)上,其工作模式为 c l i e n t / s e r v e r c c / s )架构,即客户机/ 服务器方式。这种模式将应用系统一 分为二, 服务器负责数据管理,客户机负责完成与用户的交互任务。客户机 通过局域网与文件服务器或数据库服务器相连,并且负责与用户的交互及收 集用户信息,通过网络向服务器发出 请求,对数据库进行操作。 客户机的处 理功能很强( 内置操作系统、 应用程序以及数据库访问程序等软件) , 这就是 所谓的肥客户机瘦服务器模式。该模式已 经在企业经营管理中得到了 广泛的 应用。 在c / s 系统中, 应用程序分为两大部分:一部分是由多 个用户共享的 信 息与功能,这部分称为服务器部分;另一部分是为每个用户所专有, 称为客 户部分.客户部分负责执行前台功能,如管理用户接口、数据处理和报告请 求等;而服务器部分执行后台服务,如管理共享外设、控制对共享数据库的 操纵、接受并应答客户机的请求等。 这种体系结构由多台计算机分别执行, 使它们有机地结合在一起, 协同 完成整个系统的应用, 从而达到系统中的软、 硬件资源最大限度的利用。 c / s应用系统基本运行关系体现为“ 请求/ 响应” 的应答模式。每当用户 需要访问服务器时就由客户机发出“ 请求” ,服务器接受“ 请求” 并“ 响应” ,然 后执行相应的服务,把执行结果送回客户机,由它进一步处理后再提交给用 户。 c / s 结构的mi s 结构如图 1 - 1 所示 客户机服务器 图1 - 1 c l i e n t / s e rv e r 结构模型 1 .2 .2 b / s 结构的mi s 近年来,世界范围内 i n t e m e t / i n t r a n e t网络环境的基本形成,为基于 i n t e rn e t 环境的信息系统的设计开发奠定了坚实的 基础, 使之成为未来信息系 统建设及发展的主要方向。 基于 i n t e m e t 环境的 信息系统在规模、结构、功 能层次及设计实现等各个方面与传统信息系统相比 较均发生了很大变化。它 采用标准的t c p / i p作为通信协议,以w e b 为标准平台,同时建立防火墙, 企业内部网络通过防火墙和i n t e rn e t 连接,形成了b r o w s e r / s e r v e r ( b / s ) 架 构,即浏览器/ 服务器架构. b / s 结构分为三个层次:客户端浏览器、 w e b 服务器、数据服务器。 客户端浏览器包含系统的显示逻辑,位于客户端。它的的任务是由w e b 浏览器向网络上的某一w e b 服务器提出服务请求, w e b 服务器对用户身份进 行验证后,用h t t p 协议把所需的网页传送给客户端,客户机接受传来的主 页文件,并把它显示在w e b 浏览器上. we b 服务器包含系统的事务处理逻辑, 位于w e b 服务器端。 它的任务是 接受用户的请求, 首先需要执行相应的应用程序与数据库连接, 通过s q l 等 方式向数据库服务器提出 数据处理申 请,然后等数据库将数据处理结果提交 给w e b 服务器,再由w e b 服务器传送回客户端。 数据库服务器包含系统的数据处理逻辑,位于数据库服务器端。它的任 务是接受we b 服务器对数据操纵的请求, 实现对数据库查询、 修改、 更新等 功能,把运行结果提交给 we b 服务器。 基于 we b 的mi s 结构如图 1 - 2 所示 图1 - 2 b r o w s e r / s e r v e r 结构模型 1 .2 .3 c / s 结构与b / s 结构的比较 c / s模式是一种两层结构的分布式系统,它的特点一是客户方与服务方 共同分担应用计算, 二是客户方与服务方的 应用程序与应用平台密切相关。 c / s的长处是减轻了服务器的工作量,但也带来一些局限: ( 1 ) 不易维护。 在 c / s模式中, 所有客户端需配置好几层软件, 如操作 系统、 网络协议软件、 客户机软件、 开发工具、 应用程序等, 因而被称为“ 肥 客户端” 。当客户端应用程序稍有改动,就要修改各个客户机上的程序. ( 2 ) 集成困 难。 这种模式下, 系统基于专用的平台 及非标准的 协议, 客 户方软件不是按开放标准设计的,因此不同人开发的程序,其结构、功能、 通信方式、数据结构差别较大,系统集成困 难。 ( 3 ) 信息 封闭. 信息实际上只限 于内 部流动, 不便于和i n t e rn e t 连接, 企 业不能及时地了 解顾客需求和外部信息,企业之间也难以交流。 b / s 模式可以说是一种由传统的二层c / s结构发展而来的三层c / s结构 在w e b 上应用的特例。 在b / s 模式下, 客户方通过浏览器向w e b 服务器提 出请求, 由we b 服务器向数据库服务器提出查询请求, we b 服务器再将查询 的数据以 超文本文件的形式传给客户机。 其主要特点是:客户机与服务器通 过t c p / i p 协议互联; 客户端采用与应用无关的超文本信息查询工具 浏览 器。因而在该模式下系统集成非常容易、维护工作量小、容易掌握与升级。 b / s 结构与c / s 结构相比具有以下优点: ( 1 ) 无需开发客户端软件, 简化了客户端。在基于b / s结构的系统中, 应用系统的程序代码,数据及支撑软件全部集中在服务器端,而客户端不需 安装专用的前端应用程序,仅通过一个随处可见的浏览器,就可以访问数据 库中的信息,因而对客户端几乎没有要求,不仅使用方便,而且容易维护。 ( 2 ) 可跨平台 操作. 克服了c / s结构中客户端跨平台的问题,客户端有 统一的用户界面。 ( 3 ) 采用公开的标准和协议, 易于和i n t e rn e t 连接, 延伸了客户与服务器 的物理距离。 ( 4 ) 瘦客户机肥服务器结构, 信息处理主要在服务器上进行。客户端软 件仅需浏览器、硬件配置较低,可用相对廉价的p c机。 1 .3 本章小结 二十一世纪是信息化、 网 络化的时代, 基于b / s 模式构造的mi s 极大地 简化了客户端,延伸了系统的物理距离,具有开放性、扩展性和维护性较好 的特点,是 mi s 发展的必然趋势。 第二章总体设计的指导思想 系统总体设计的背景 l o t o n s 公司是澳大利亚一家从事资产清点工作的专业性公司,其业务量 业务辐射范围 很广,但是公司所属员工人数并不多,主要依靠计算机进 2.大 行业务管理.近年来,该公司发展迅速,在澳大利亚各州以及东南亚地区都 开展了业务,并积极进军中国市场。该公司原来采用的是桌面管理系统,各 地分公司只能通过电话和传真来交流信息,信息传递速度慢,费用消耗大且 不便于信息集中管理, 用原来的桌面管理系统来处理信息已 经越来越难以 满 足企业的需求。由 于互联网技术的飞速发展及其逐步普及,企业对信息进行 网络化管理的条件己 经日 趋成熟。 在这种背景下, 公司提出开发基于w 七 b 的 管理信息系统, 帮助企业从分散管理向集中管理发展, 提高效率、 降低成本、 完善服务。 2 .2 系统的总体设计 面对企业复杂且迅速扩张的业务,系统的开发必须遵循开放、稳定、安 全可靠、维护性好等原则,以便于系统既能满足目 前的需要,又能适应将来 扩展的需要。 系统总体设计的原则包括以下几个方面: 1 、实用 本系统的建立是为帮助企业进行网络化信息管理, 提高效率、 降低成本, 系统必须是实用的,能符合实际管理的要求。在实用方面,有以下几个因素 需要考虑: ( 1 )访问速度。取决于服务器接入方式和接入带宽、摆放地点、硬件性 能和页面数据量、网络拥塞程度等。由于本系统的目 标群体不仅限于本地, 应考虑地理因素造成的性能下降。 7 ( 2 ) 可容纳的最大同时请求数。 取决于服务器性能、程序消耗资源和网 络拥塞程度等。 2 、易操作 一个好的应用系统必须是直观易用的,一个操作复杂、界面零乱的系统 是不能被用户接受的。在应用系统的用户操作方面应遵循人机界面设计的基 本原则。 ( 1 ) 界面必须始终一致 一致的人机界面不致增加用户的负担,让用户始终用同一种方式思考与 操作.最忌讳的是每换一个屏幕用户就要换一套操作命令与操作方法。 ( 2 ) 输入画面尽可能接近实际 如果系统的用户界面,与用户在日常工作中接触的实际情况相吻合,用 户会产生亲切感, 会很迅速地掌握软件的使用并且乐意使用这样的软件。本 系统的设计需要遵循这个原则,在用户界面的设计上尽可能接近实际情况, 比如在工作登记时,用户可以首先查看工作日 志,让用户感觉好像看到了人 工操作时使用的挂在墙上的日 历板, 这样的设计无疑会提高工作效率。 ( 3 ) 宁可让程序多千,不可让用户多千 多数管理信息系统软件的数据输入量较大。对于一些相对固定的数据, 不应让用户频频输入, 而应让用户用鼠 标轻松选择。 例如, 员工信息中的“ 员 工类型” ( s t a ff t y p e ) 是相对固定的数据, 其值一般是“ 临时工” ( c a s u a l ) , “ 固定工”( p e r ma n e n t ) , 项目主管, ( s u p e r v i s o r) .“ 部门经理, ( m a n a g e me n t ) 等。录入这类数据之前, 应用程序应在相应位置弹出一 个列表框,让用户用鼠标选择,而不应让用户每次都输入这些文字。 ( 4 )具有较强的容错功能 按键连击等误操作均有可能导致录入错误数据。在程序设计时 应采取相 应的数据验证措施,可以避免此类因素造成的错误。例如,录入年龄,我们 可以对年龄的范围进行限定,使用户无法输入0 - 1 0 0以外的数据。 3 、安全 整个系统将在 i n t e 而 e t 网上运行, 系统必须是安全的, 包括系统本身的 安全和数据的安全。系统必须既能够防止恶意的侵扰,又能防止因误操作引 8 起的数据错误。因此,系统要有管理员、操作员权限管理机制,要保证系统 软件安全、可靠地运行,要有容灾、容错方案, 要有异常灾害的恢复能力。 4 、易维护 随着企业的发展, 根据实际工作需要,对系统的要求也会不断更新。系 统应提供方便、灵活的维护手段,方便应用人员和设计开发人员的维护和管 理 。 5 、数据库设计合理 数据库是mi s 的核心, 是系统可以长期稳定存在的基础。 建立数据库需 要注意以下问题: ( 1 ) 数据的一致性 由应用程序产生工作编码,要保证不同工作任务具有不同编码,工作编 码具有唯一性。 ( 2 ) 合理冗余 如果数据冗余低, 数据的完整性容易得到保证,但增加了表间连接查询 的操作,为了提高系统的响应时间,合理的数据冗余也是必要的。 ( 3 ) 合理选择数据类型 数据类型的合理选择对于数据库的性能和操作具有很大的影响,在进行 数据库设计时需要注意以下几点: i d e n t i f y 字段 尽量不 要作为 表的主键与其它表关 联, 这将会影响到该 表的 数据迁移。 t e x t和 i m a g e字段属指针型数据,主要用来存放二进制大型对象 ( b l o b ) 。这类数据的 操作相比 其它数据类型较慢,因 此要尽量避开使用。 日期型字段的优点是有众多的日期函数支持, 因此, 在日期的大小比较、 加减操作上非常简单. 但是,在按照日期作为条件的查询操作也要用函数, 相比其它数据类型,速度上要慢许多,这是因为用函数作为查询的条件时, 服务器无法用先进的性能策略来优化查询而只能进行表扫描遍历每行. ( 4 ) 数据规范化存储。 以姓名为例, 对每一个客户来说, 其姓名是唯一的。 外国姓名比较复杂, 在把它存入数据库之前, 要把姓名分解成若千组成部分, 如: 姓、名、 称呼、 9 后缀等,并且需建立统一规范,将姓名存放成一种统一的格式。 6 、合理运用新技术 在开发管理信息系统中,如何合理运用新技术应该遵循以下三个原则: 第一,创新原则,体现先进性。计算机技术日 新月异,要及时了解新技 术,使用新技术,使目标系统较原系统有质的飞跃。 第二,经济原则,体现实用性。大而全和高精尖并不是管理信息系统成 功与否的唯一衡量标准。事实上许多失败的管理信息系统正是由于盲目 追求 高新技术而忽视了 其实用性,盲目 追求完美而忽视了本单位的技术水平、管 理水平和人员素质所致。 第三,前瞻性原则,体现发展性.为了 延长系统的生命周期,有效的发 挥管理信息系统的作用,应当注意技术的发展方向和环境的变化趋势。 2 .3 本章小结 本章主要介绍了本系统的总体设计的背景以及总体设计的原则, 这些原 则是本系统选用开发工具、分析设计开发系统的指导思想。 第三章系统开发环境 3 . 1 系统开发的硬件环境 开发本系统所需的基本硬件环境如下: c p u : i n t e l p e n t i u m i i 3 5 0 m h z 内存:1 2 8 m b 显示: 8 0 0 x 6 0 0 , 2 5 6 c o l o r s c d - r o m: 需要 3 .2 系统开发的软件环境 开发本系统所需的基本软件环境如下: .n e t 开发平台 r a t i o n a l r o s e e n t e r p r i s e e d i t i o n s q l s e r v e r 2 0 0 0 i n t e r n e t i n f o r ma t i o n s e r v e r 5 . 0 mi c r o s o f t i n t e r n e t e x p l o r e r 5 . 5 mi c r o s o ft wi n d o ws 2 0 0 0+s p 2 3 . 2 . 1 .n e t开发平台 2 0 0 0 年底, 微软发布了.n e t开发平台, 这是自1 9 9 3 年7 月随着wi n d o w s n t 3 . 0 出现的win 3 2 a p i 后微软软件开发平台的第一次大升级.比起wi n 1 6 来, wi n 3 2 提供了 更多功能强大的a p i , 但没有对工具和技术进行重大改变。 与之不同的是, .n e t开发平台则在开发人员用来创造应用程序的工具和技术 上做了根本的改变. .n e t开发平台使得开发人员创建运行在i n t e r n e t i n f o r m a t i o n s e r v e r ( i i s ) r a t i o n a l r o s e 是可视化的面向对象的建模工具,能帮助系统开发人员和 用户获得规范的面向 对象的分析、设计结论, 进行结论交流,以及对这些结 论的一致性检查。 r a t i o n a l r o s e 可以应用于wi n d o w s 9 x, wi n d o w s n t , s u n o s , i b m/ o s 2 等平台。 r a t i o n a l r o s e 的主 要优点 有: 提高开发进程的灵活性。 提高软件成分的可重用性。 提高系统的弹性. 降低开发风险。 降低开发成本. r a t i o n a l r o s e目前己经发展成为一整套的软件开发工具, 构成了r a t i o n a l r o s 。家族,它包括系统建模 ( 面向对象的系统分析与设计) 、模型集成、源 代码生成、 软件系统测试、 软件文档的生成、 往返工程、 软件开发项目 管理、 团队开发管理,以及i n t e r n e t w e b 发布等工具,形成为一个强大的软件开发 集成环境. r a t i o n a l r o s e 的早期版本支持软件开发的b o o c h 方法和o mt ( 面向对象 的建模技术) 方法,从1 9 %年的版本r a t i o n a l r o s e 4 .0 起, 新增支持u m l 方法的功能。当前的最新版本为r a t i o n a l r o s e 2 0 0 2 0 另外,根据实现环境的不同,r a t i o n a l r o s e 还有支持不同语言的a d d - i n 版本: r o s e / ms v i s u a l c + + , r o s e / ms v i s u a l b a s i c , r o s e / s m a l l t a l k , r o s e / a d a , r o s e / j a v a , r o s e / s q l a n y w a r e , r o s e / o r a c l e 8 , r o s e / p o w e r b u i l d e r 等。 r a t i o n a l r o s e 的这些a d d - i n 版本可以 支持采用相应的语言建立应用系统模型和生成源 代码,以及实现往返工程的功能。 3 . 3 本章小结 .n e t 开发平台的发布标志着近十年来微软开发平台第一个重大的转变, 它使程序开发人员可以 在短时间内创建更为安全可靠、扩展性更强的应用程 1 5 硕士学位论文 ma s t r r s t i i l s i s 序。 r a t i o n a l r o s e 是进行系统建模 ( 面向 对象的系统分析与设计)的有效工 具。 本章介绍了开发 “ w e b工作管理系统”的硬件环境和软件环境,.n e t 开发平台以及软件开发工具r a t i o n a l r o s e . 第四章系统开发采用的技术及编程语言 随着经济的高速发展和计算机科学技术应用的日益广泛,很多早先开发 的信息管理软件已不能适应工作需要.因此如何运用更科学、更先进的方法 和技术开发出符合时代发展特点以 及有更好预见性和扩充性的 新一代信息管 理软件,就成为当务之急。 发布于2 0 0 0 年秋天的m i c r o s o ft .n e t , 表明微软将以网络为中心, 彻底 转换产品 研发、发布的方式,改 变产品和服务的范围。作为全球软件业最大 的公司, 微软在.n e t技术上投入了大量的人力物力, 把公司未来战略重心放 在了.n e t上.目 前看来,.n e t 技术无疑代表了未来i n t e rn e t 技术的方向。 a s r n e t技术就是由 微软的.n e t 技术细化而来的,它不是a s p的简单 升级, 而是m i c r o s o ft 推出 的 新一 代a c t i v e s e r v e r p a g e s , 可以 说a s p .n e t 是 一个全新的技术。 a s r n e t完全基于模块与组件, 具有更好的可扩展性与可 定制性, 数据处理方面引入了许多新技术, 正是这些新特性, 让a s r n e t 超 越了a s p ,同时也提供给w e b开发人员更好的灵活性,有效缩短了w e b 应 用 程序的 开发周期。 a s r n e t 与w i n d o w s 2 0 0 0 s e r v e r / a d v a n c e d s e r v e r 的完 美组合,为中小型乃至企业级的w e b 商业模型提供了一个更为稳定,高效, 安全的运行环境. 本系统就是采用a s r n e t技术建立起来的。 4 . 1 as rne t a s r n e t是.n e t 平台上的新技术,以前称为a s p + , 是新一代的a c t i v e s e r v e r p a g e s 脚本语言。 a s r n e t 可以 称作是建立在通用语言运行环境( c l r ) 上的应用程序框架,在.n e t f r a m e w o r k 上提供了一个全方位的w e b 开发平 台,提供许多基础服务协助程序设计开发人员构建功能强大的互联网应用程 序。 a s r n e t对于以前的a s p 来说有什么突破呢? 第一,运行机制不同。 a s p 属于一种解释型的编程框架, 只支持直译式语言 ( i n t e r p r e t e d s c r i p t l a n g u a g e ) . a s r n e t是一 种编译型的编程框架, 是运行在服务器端的 编译 后的c l r代码, 利用提前绑定, 即时编译, 本地优化和缓存服务来提高性能。 由于它是编译后运行的, 所以 执行效率要比a s p 高得多。另外a s p .n e t还 提供c a c h e 的能力,有效地缩短服务器的应答时间。 服务器 图4 - 1 a s r n e t的运行过程 如图 4 - 1所示,当用户发出一个 a s p x网页的要求后,a s p .n e t引擎 ( x s p i s a p i .d l l ) 会先将a s p x的网页转换成源 程 序代码 ( s o u r c e c o d e ) , 然后 编译成一个d l l 文件, 接着将此网页当成一个类 ( c l a s s ) , 在内存中建立此 对象的实体 ( o b j e c t i n s t a n c e ) , 并进行初始化 操作, 最后将执行结果返回到 客户端。 1 、第一次存取 当客户端浏览器发出一个a s p x网页的 请求到a s r n e t 服务器时, w e b 服务器会交由x s p i s a p i .d l l 来处理。 服务器先 检查 输出 快取 ( o u t p u t c a c h e ) 中是否有此网页,或者此网页是否已被编译成 d l l 。如果找不到此网页的 o u t p u t c a c h e 或编译过的d l l , 此时便启动p a r s e r 将 此网页解释 ( p a r s e ) 成 源程序代码, 然 后由 编译器 ( c o m p i l e r ) 将其编译 成d l l 。 编译器载入解释 过的网页后,将源程序代码编译成中间语言,并将结果保存在一个指定的目 录下. x s p i s a p i .d l l 便从编译过的 程序代码来产生 对 象, 并 适时地回存网页与 控制项的状态信息,处理事件,然后将执行的结果返回到客户端浏览器。 2 、第二次存取 如果客户端浏览器再次发出要求执行同一个网页时,服务器便再次从 o u t p u t c a c h e 中查找 此网 页, 或查找编译过的d l l . 若服务器找到了 编译过 的 d l l ,便省略掉编译的步骤,接着直接从编译过的 d l l建立对象。然后 和上述的过程一样,适时地回存网页与控制项的状态信息,处理事件,最后 将执行的结果返回到客户端浏览器。 3 、输出快取 如果用户对相同的网页进行第二次以后的存取,若服务器发现 o u t p u t c a c h e 中已 经有此网 页, 则省略 掉上 述所有的步 骤, 直 接将o u t p u t c a c h e 的 内容返回到客户端浏览器。 第二,语言独立。 在a s p 网页中 可以 使用多种语言来撰写程序代码, 不过只限于s c r i p t 语 言, 如: v b s c r i p t , j s c r i p t e a s p n e t则允许使用编译式的 语言, 提供较好 的执行效率与跨语言的兼容性,如:c # , v i s u a l c + + .n e t , v i s u a l b a s i c .n e t e 第三,分离程序代码和网页内容。 在 a s p网页中, h t m l标注和程序代码是混在一起的,会有一种杂乱 无章的感觉.a s p .n e t是用事件驱动 ( e v e n t d r i v e n )与数据绑定 ( d a t a b in d i n g ) 的 开发方 式, 将 程 序 代 码与 用户界面 接口 干 净 地 分开。 另外, 可 使 用c o d e - b e h i n d 的方式 将程序代码和显示的标注分离在不同的文件中,让程 序更具可读性。 第四,简化部署和配置的操作。 若在a s p网页中调用到组件, 部署组件时需要复杂的注册操作, 要远程 地管理这种类型的应用程序很不现实, 因为注册工具必须在本地服务器运行。 如果组件在使用过程中, 经常会被锁定, 要想替换或者移去他们,整个w e b 服务器就必须停止,因 此更新版本是件非常困难的事情。 如果将应用程序部 署到其他机器时则还需进行某些配置操作。因为上述原因,应用程序在部署 时经常会遇到许多问题。 在a s r n e t中, 使用的是一个基于文本的、 分层次的配置系统, 它简化 了服务器端环境和we b 应用程序的设置。由于配置信息用纯文本格式保存, 1 9 新的设置不需要本地管理工具的支持。 另外, a s r n e t 应用程序使用组件时 也不需要注册, 只需要将组件复制到bi n目 录或者通过f t p 上传到bi n目 录。 除了提供 “ 零注册”的方法来部署编译过的组件外,原始的组件甚至可以在 w e b 服务器运行的过程中被替换。 第五,安全机制更好。 在 a s p中,唯一能使用的验证方式是w i n d o w s a u t h e n t ic a t i o n ; 而 a s r n e t则提供三种不同的登录验证方式: w i n d o w s , p a s s p o rt和c o o k i e , 也可以 使用i m p e r s o n a t i o n 的功能, 使用登录者 的 权限 执行一些 程序代码或存 取资源。 a s p与a s r n e t的比较如表4 - 1 项目 as pas p ne t 扩展名. a s p a s p x 使用语言 使用 v b s c r ip t , j s c r ip t 等 s c r i p t 语言 任 何 支 持 c o m m o n l a n g u a g e s p e c if ic a t io n规格的 语言都 可以 撰 写, 如:v i s a u l b a s i c .n e t , c # 等 程序和网页设计 程序代码与网页混杂, 难以 重复使用 程序代码可与显示界面分离,独立 成一个类 ( c l a s s ) 支持 we b s e r v i c e 不支持 支持 a p p l i c a t i o n as p d l lx s p i s 即i . d l l 配置设置方式 使用l i s 的m mc嵌入式管 理单元 使用 x m l 类型的配置文件: w e b .c o n f i g 数据存取方式使用a d o使用 d o ne t 表4 - 1 a s p 与a s p n e t的比较 4 .2 数据库存取模型a d o ne t a s p .n e t中的 a d o .n e t和 a s p中的 a d o相对应,它不是 mi c r o s o ft a c t i v e x d a t a o b j e c t s ( a d o ) 的下一个版本, 而是以 .n e t f r a m e w o r k 为基 础,专门为.n e t平台上的数据存取操作而重新建置的全新的数据库存取模 型,提供了平台互用性和可伸缩的数据访问。从长远来看,较新的数据访问 技术通常能够减少开发时间,简化代码并提供良 好的性能。 a d o ne t 相对于a d o而言主要有以下特点: 1 、离线存取 过去,数据处理主要是基于连接的,在应用程序运行的过程中,连接保 持着打开状态, 如果连接断开,数据就不能再存取。在 a d o中, r e c o r d s e t ( 记录集) 虽然可以 提供不连接的数据访问 功能,以 便让多用户同时存取数 据, 提高执行效率。 但实际上, a d o主要是为连接的访问设计的, 它较适用 于即时连线的数据处理。 a d o ne t的 d a t a s e t ( 数据集)则一律采用离线的方式来存取数据。 a d o ne t以离线数据为基础, 可以对本地的d a t a s e t 进行数据的添加、 删除 或修改,然后更新真正的数据来源。采用离线的方式存取数据所带来的好处 是:第一,当 进行数据改动时,针对的是本机的d a t a s e t 进行操作,因而可 以减少对数据库服务器往返沟通的次数,降低网络的流量,提供了更好的可 伸缩性;第二,在大多数情况下,数据库只可以维持少量的并发连接,采用 离线方式减少了与 数据库的活动连接数目( 即 减少了多 个用户争用数据库服 务器上有限资源的可能性) ,从而实现了最大程度的数据共享。 2 、使用x ml 文件交换数据 如果要在不同的 应用程序或组件之间传送a d o的r e c o r d s e t ,必须通过 c o m m a r s h a l l in g 的 机 制 将 参数、 数据包 装 成 标 准 格式, 即 二 进制格 式, 然 后适当地进行一些 数据类型转换的工作。 采 用r e c o r d s e t 的 缺点在于: 第一, 类型转换的过程会耗掉一些资源, 而且数据类型被限制为 c o m 标准定义的 那些数据类型; 第二, 防 火墙通常会挡掉c o m m a r s h a l l i n g 的 数据包, 使得 网际存取更为困难。虽然可以在防火墙上开个通信端口 ( p o rt )让 c o m m a r s h a l l i n g 数据包通 过, 但这无疑也在一定 程度上降 低了 安全性。 所以 一 般 来说,基于安全性的考虑,不进行这样的操作。 在a d o ne t中, 传输数据的格式是x ml( 可扩展标记语言) 。 x ml 是 一种简单、与平台无关并被广泛采用的标准。它的格式是基于文本的,所以 可以直接通过防火墙,不受任何限制。对于离线或远端的数据而言,不管与 使用 a d o ne t程序沟通的对象是一般的应用程序还是网站的网页, 21 a d o n e t 都一致地采用x m l 来交换、 更新数据。 由于传送的数据都是x m l 格式的,因此采用a d o ne t的应用程序可以与其他能够理解 x m l文件格 式的应用程序中的组件交换数据,不用担心数据类型受限与转换的问题. 使用 x m l格式来交换数据的好处是:( 1 )不需要进行数据类型转换, 数 据 类型 更 丰富 , 执行效 率会比 在 传统 的a d o上 使 用c o m m a r s h a l l i n g 来 包装数据然后进行传输的方式要快很多。( 2 )数据处理的程序代码与用户接 口 可以 更容易地分散在不同的电 脑上,也可以 提高大量用户的 应用程序的执 行效率,维护上也较为简单。( 3 ) 在应用方面,目 前许多数据库厂商设计出 所谓的x m l 数据库使用x ml 来保存数据, 能够直接存取x m l 文件的数据。 也有许多厂商在关联式数据库中增加对x m l 的支持, 如s q l s e r v e r 2 0 0 0 可 以直接通过h t t p从数据库中取得数据库的数据,然后返回一份x ml格式 的文件; 或者直接发给s q l s e r v e r 2 0 0 0 的数据库一份x m l 文件来添加、 修 改、删除数据。因此,若这些支持x m l的数据库搭配了a d o n e t来进行 存取,势必让数据的存取与交换更为单纯,也变得更容易地操作。 3 、新的数据浏览方式 a d o循序读取 r e c o r d s e t 中的数据,数据一行一行移动;而a d o ne t 采用一种新的数据浏览方式, 可以通过对象之间的关联性来存取相关的数据。 4 、采用d a t a s e t 对象显示数据 a d o使用r e c o r d s e t 对象来显示数据, 看起来类似单一的t a b l e ( 数据表) ; 而a d o ne t 使用d a t a s e t 对象来显示数据, d a t a s e t 是一个或多个表的集合, 每一个表一般都对应于数据库中的表或视图。 d a t a s e t 组成了一个非连接的数 据库数据视图,可以保存多个独立的表并维护有关表之间关系的信息,因此 它可以保存比r e c o r d s e t 丰富得多的数据结构。 5 、程序化接口 过去使用a d o开发w e b 应用程序,在s c r i p t 的开发环境撰写程序时, a d o只使用v a r i a n t 数据类型;而在a d o n e t中,所有数据存取相关对象 的变量都有特定的类型。 4 . 3 系统采用的编程语言v i s u a l c # 2 0 0 2 年初正式推出的v i s u a l s t u d i o .n e t中新增加的语言c # ,是一种帮 助程序员快速便捷地构建m i c r o s o ft .n e t 平台解决方案的新的面向对象的编 程语言, 它 提供的 架构允许c # 组件转换为置于i n t e m e t 之上的w e b s e r v i c e s , 接受来自 运行于任意平台上的 任意应用程序的请求。 c # 提高了开发的效率, 同时又排除了可导致增加开发开支的编程错误,它为c / c + + 程序员带来了快 速开发w e b 应用的能力,同时又保持了强大功能和灵活性. 本系统采用c # 作

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论