(化学工程专业论文)基于j2ee平台mis可重用开发模式的研究.pdf_第1页
(化学工程专业论文)基于j2ee平台mis可重用开发模式的研究.pdf_第2页
(化学工程专业论文)基于j2ee平台mis可重用开发模式的研究.pdf_第3页
(化学工程专业论文)基于j2ee平台mis可重用开发模式的研究.pdf_第4页
(化学工程专业论文)基于j2ee平台mis可重用开发模式的研究.pdf_第5页
已阅读5页,还剩73页未读 继续免费阅读

(化学工程专业论文)基于j2ee平台mis可重用开发模式的研究.pdf.pdf 免费下载

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

文档简介

摘要 摘要 信息管理系统( m i s ) 是一个由人、计算机及其他外围设备等组成的能进行信 息的收集、传递、存贮、加工、维护和使用的系统。传统的m i s 系统的核心是 客户端,服务器架构,而目前普遍被采用的的m i s 系统的核心是基于j 2 e e ( j a v a 2 p l a t f o r me n t e r p r i s ee d i t i o n ) 的浏览器服务器架构。 m i s 系统的设计和开发过程中,会产生一些具有通用性的设计经验和方法, 然而,这些设计经验和方法往往不会被记录下来,或者即使有记录也是零散的。 在开发新的系统时,不能充分有效的使用以前的经验和方法。本文对所从事科研 项目中通用的方法进行总结,提出了可供类似系统参考使用的可重用设计和开发 模式。对整个开发流程进行了系统分析,并提出针对整个流程的可重用开发模式。 从而可以有效利用以往m i s 建设中的成功经验和所己开发出的公共构件,避免 低效重复劳动,同时也可以建设高效、可靠、适应性强的m i s 应用系统。使之 功能强,界面友好,易于操作,维护简单。 在介绍了m i s 系统应用现状和发展趋势之后,本文讨论了m i s 系统开发中 的可重用模式,分别对系统架构选择,文件系统部署,用户界面搭建,数据库持 久层设计,数据库连接乃至开发过程中所需遵循的规范等进行了研究,最后,以 一个实际m i s 系统为例,说明了采用这一模式进行开发的流程。 关键词:m i s ,j 2 e e ,p a t t e r n ,数据库持久层,重用,浏览器,服务器结 构,客户端服务器结构 l i l a b s t r a c t t h em a n a g e m e n ti n f o r m a t i o ns y s t e m , o rm 塔i sc o m p o s e do fa no p e r a t o r , a c o m p u t e ra n do t h e rp e r i p h e r a l sa n di su s e dt og a t h e r , t r a n s f o r m , s t o r e , m a i n t a i na n d p r o c e s si n f o r m a t i o n m o s to ft r a d i t i o n a lm i s si su s e dt ob eb u i l to nac l i e n t - s e r v e r m o d e l n o w , m o r ea n dm o r em i s sb a s et h e i rf r a m e w o r k so nab r o w s e r - s e r v e rm o d e l a f t e ri n t e r n e ta p p e a r e d j a v a2p l a t f o r me n t e r p r i s ee d i t i o nc a na c c e l e r a t ea n de a s et h e d e v e l o p i n gp r o c e s so fm a n a g e m e n ti n f o r m a t i o ns y s t e m r e u s a b l ed e s i g nm e t h o d sw o u l db ee x t r a c t e da n dg e n e r a l i z e di nt h ep r o c e s so f d e s i g n i n ga n dd e v e l o p i n gm i s s b u tm o s to f t h o s em e t h o d sa n de x p e r i n e c e sw e r en o t d o c u m e n t e df o l l o w e db yt h el o s to fu s f u li n f o r m a t i o n t h i sp a p e rs u m m a r i z e sp a s t e x p e r i e n c e sa n dp u t sf o r w a r dar e u s a b l ep a t t e mf o rd e s i g n i n ga n dd e v e l o p i n g m a n a g e m e n ti n f o r m a t i o ns y s t e m a f t e r i n t r o d u i n gt h es t a t u sq u o ,b a c k g r o u da n d t r e n do fm a n a g e m e n ti n f o r m a t i o n s y s t e m , t h i sp a p e rm a k e sar e s e a r c ho nar e u s a b l ep a t t e r n , i n c l u d i n gt h es y s t e m f r a m e w o r ks e l e c t i o n , f i l es y s t e md e p l o y m e n t , u s e ri n t e r f a c ec o n s t r u c t i o n , d a t a b a s e c o n n e x i o na n dc r i t e r i o nt h a ts h o u l db ek e p td u r i n gd e v e l o p i n gp r o c e s s i nt h el a s t c h a p t e r , w ed e v e l o pa na c t u a lm a n a g e m e n ti n f o r m a t i o ns y s t e mu s i n gt h i sp a t t e r n t o i n t r o d u c et h ed e s i g n i n ga n d d e v e l o p i n gp r o c e s s k e yw o r d s : m i s ,j 2 e e , p a t t e r n , r e u s a b l e ,d a t a b a s ep e r s i s t e n c el a y e r , c l i e n t s e r v e ra r c h i t e c t u r e , b r o w s e r s e r v e r a r c h i t e c t u r e i v 浙江大学硕士学位论文 1 1 引言 第一章绪论 随着网络技术的高速发展,互联网己经把世界紧密地联系在一起,而m i s ( 管理信息系统一m a n a g e m e n ti n f o r m a t i o ns y s t e m ) 系统也应运而生,m i s 系统 是一个由人、计算机及其他外围设备等组成的能进行信息的收集、传递、存贮、 加工、维护和使用的系统。其主要任务是最大限度的利用现代计算机及网络通讯 技术加强信息管理。 m i s 技术被用在不同的管理领域中就产生了各种各样的信息系统发展分支 ( 或不同提法) 。m i s 在工业企业中的应用分支主要有:强调m i s 技术在管理中应 用的有c a m s ( c o m p u t e r a i dm a n a g e m e n ts y s t e m ) ;强调m i s 技术在会计和财务 管理中应用的有a i s ( a c c o u n t i n gi n f o r m a t i o ns y s t e m ) :强调m i s 技术在生产过程 管理中应用的有c a m s ( c o m p u t e ra i dm a n u f a c t u r es y s t e m ) 和c a p p ( c o m p u t e ra i d p r o d u c t i o np r o c e s s ) ;强调m i s 技术在物料供应计划管理中应用的有m r i ( m a t e r i a lr e q u i r e m e n tp l a n n i n g ) :强调m i s 技术在生产资源全面管理中应用的有 m r p ( m a n u f a c t u r er e c o u r s e sp l 锄血g ) ;以及由m r p i i 、i n t e m e t 、供应链管理 的基础上演变发展而来的e r p ( e n t e r p r i s er e c o u r s e sp l a n n i n g ) 等。 m i s 在商业企业中的应用主要有:强调m i s 技术在商业零售业中应用的有 p o s ( p o i n to fs a l e s ) ;强调m i s 技术在商业企业管理中应用的有b i s ( b u s i n e s s i n f o r m a t i o ns y s t e m ) ;强调m i s 技术在商业采购中应用的有e o s ( e l e c t r o n i c o r d e r i n gs y s t e m ) ;舭年来发展起来的e c ( e n t e r p r i s ee l e c t r o n i cc o m m e r c e ) 等。 人们将m i s 中的计划、任务、控制等技术与工程领域中的辅助设计和辅助 制造等技术相结合形成计算机集成制造系统( c i m s ,c o m p u t e ri n t e g r a t e m a n u f a c t u r es y s t e m ) 。 传统的m i s 系统的核心是c s ( c l i e n t s e r v c r 一客户端,服务器) 架构,而 基于i n t e r n e t 的m i s 系统的核心是b s ( b r o w s e r s e r v e r 浏览器服务器) 架构。 c s 架构的软件,需要使用者安装客户端软件,由此带来软件的安装、更新问题, 增加了客户操作的复杂性和成本,b s 架构比起c s 架构有着很大的优越性,用 浙江大学硕士学位论文 户使用现成的网页浏览器( 如i e 浏览器) 即可使用该软件,而不需要进行任何 的配置。j a v a 技术的出现,尤其是j 2 e e ( j a v a2p l a t f o r me n t e r p r i s ee d i t i 平台 的推出正是这种努力的结果,也使得系统的开发由此变得更加快速和方便。 1 2m i s 系统的应用现状和发展趋势 1 2 1 应用现状 1 国外的目前研究现状 管理信息系统在国外的发达的国家得到了广泛地开发与应用。它已大量应用 于生产、通信、交通、运输、邮电、商业、文化教育等各个方面,其中尤以m i c r o s o f t 公司、a p p l e 公司、i n t e l 公司、o r a c l e 公司、s u n 公司、b o r l a n d 公司为代表。 m i c r o s o f t 的办公室系列,b o r l a n d 的d e l p h i 系列等,以其优良的性能与极强的通 用性,适合于各个行业的文字、图表、数据信息的管理以及通信方面的应用。 2 我国目前的m i s 现状 我国的m i s 建设始于7 0 年代,m i s 软件开发方法大致经历了以下三个阶段: ( 1 ) 手工编程阶段m i s 建设初期,由于当时受软件与硬件条件的限制,d i s 软件 的开发是在高级语言环境下,直接进行手工编程,工作量大,开发周期长,开发 方式不规范。 ( 2 ) 公用程序库开发阶段。为了提高开发效率,开发者运用结构化程序设计思想, 建立公共数据处理功能模块,如数据录入、修改、删除等模块,由这些模块组成 公用程序库。该方法规范化了软件的开发方法避免了开发过程中大量重复工作, 提高了开发效率。 ( 3 ) 专业的m i s 开发工具开发阶段。m i s 开发工具又叫m i s 生成器。是一种独立 于d b m s 的开发手段,用户只需定义系统的数据模板和必要的数据处理关系, 开发工具即可生成所支持的后台d b m s 的源程序,并可自动生成有关文档,从 而大大缩短了开发周期,提高系统的规范性和严密性。如国家8 6 3 项目组开发的 q u i c k m i s 等,都是我国在这方面的成功典范。 2 浙江大学硕士学位论文 1 2 2 发展趋势 l 决策支持系统d s s 决策支持系统( d e c i s i o ns u p p o r ts y s t e m ,简称d s s ) 是旨在帮助决策者提高决 策能力和水平的管理信息技术。它是管理信息系统的高层部分可以作为单独的 系统存在,也可作为一个子系统存在于m i s 的高层。是管理信息系统的一种发 展与自然延伸。决策支持系统辅助、支持中高级决策者迅速而准确在提供决策所 需数据、信息和背景资料,帮助决策者明确决策目标,提供可选择的方案,并对 各种方案进行评价与优选。d s s 的结构模式主要有两种:基于数据模型的d d m 模式和智能管理信息系统i m i s 。后者在传统的管理信息系统中引入专家系统知 识以及利用专家推理方法来解决较复杂的分析和判断问题i m i s 受到了越来越多 的重视。 2 计算机集成制造系统伽s c m i s ( c o m p u t e ri n t e g r a t e dm a n u f a c t u r i n gs y s t e m ) 是在计算机通信网络与分 布式数据库的支持下,把各种局部自动化子系统集成起来,实现信息集成和功能 集成,从而充分发挥该技术的综合优势,求得企业的全局优化。c m i s 系统由三 大单元技术m i s ,c a d ,c a m 组成,它们与生产活动中的管理、设计和制造三大 环节相对应,形成一个集管理、设计和制造于一体的集成化系统。 3 基于i n t r a n e t 的新一代管理信息系统 由于网络技术的成熟以及生产经营单位规模的扩大,使得在企业内部架构网 络成为可能。企业内部中的任何部门都能通过网络进行互联。i n t r a n e t 作为自成 体系的一项技术,已具有自己的开发工具,开发标准和方法。由于i n t r a n e t 系统 的设计和开发建立在成熟的因特网技术之上。因此,软件开发周期短、系统生命 周期长,最大限度地降低了系统开发和运营成本该系统由四大平台组成:网络应 用支持平台、信息资源管理平台、消息传递与工作流管理平台、事务处理平台。 1 3 本文的结构 第一章概论,论述m i s 系统的概念,应用现状以及发展趋势。同时列出了 本文的结构 3 浙江大学硕士学位论文 第二章对j 2 e e 进行了全面的介绍,分析了j 2 e e 的结构,核心技术,优势 并且重点说明j s p 以及相关技术。 第三章讨论了m i s 系统的设计问题,分析了m i s 系统开发所存在的问题, 并提出相应的解决方案,本章分为四部分进行论述。第一部分是系统架构的选择, 第二部分是w e b 层设计,第三部分是数据库持久层的设计,第四部分是数据库 连接。 第四章是m i s 系统的开发,以本科生毕业设计选题系统为例,说明了m 珞 系统实际的开发流程。 第五章是总结和展望,回顾了本文所做的研究和不足,并提出进一步研究的 思路。 4 浙江大学硕士学位论文 2 1j 2 e e 的概念 第二章j 2 e e 简介 j a v a 程序设计语言自从1 9 9 5 年3 月问世以来,在信息技术领域占有越来越 重要的地位,相对其他语言而言,j a v a 主要具有以下优势: 1 、快速入门和学习。j a v a 是面向对象的语言,具有简单清晰的结构,因此便于 入门和学习。 2 、以更少的代码实现更多的功能,从而实现快速的开发。j a v a 提供强大的架构 和类库支持,可以让用户把注意力集中在业务上。 3 、平台无关性。j a v a 提供了j v m ( j a v a 虚拟机) 机制,使得编写的程序对平台 不产生依赖,可以一次编写,跨平台处处运行。 j a v a 平台有3 个版本,分别是实用与小型设备的j 2 m e ( j a v a 2 m i c r o e d i t i o n ) 、 实用与桌面系统得j 2 s e ( j a v a2s t a n d a r de d i t i o n ) 以及适用于服务器应用程序的 j 2 e e ( j a v a2p l a t f o r me n t e r p r i s ee d i t i o n ) 。 j 2 e e 是s u n 公司联合m m ,o r a c l e ,b e a 等大型企业应用系统开发商于1 9 9 8 年共同制订的一个基于j a v a 组件技术的企业应用系统开发规范,该规范定义了 一个多层企业信息系统的标准平台,旨在简化和规范企业应用系统的开发和部 署。 2 2j 2 e e 的结构 过去,c s ( c l i e n t s e r v e r ) 结构的软件被广泛采用,图1 2 1 描述了典型的二 层化结构。在很多情况下,服务器提供的唯一服务就是数据库服务。在这种解决 方案中,客户端程序负责数据访问、实现业务逻辑、用合适的样式显示结果、弹 出预设的用户界面、接受用户输入等。c l i e n t s e r v e r 结构通常在第一次部署 的时候比较容易,但难于升级或改进,而且经常基于某种专有的协议j 面常是某 种数据库协议。它使得重用业务逻辑和界面逻辑非常困难。更重要的是,在w e b 时代,二层化应用通常不能体现出很好的伸缩性,因而很难适应i n t e r n e t 的 5 新江大学硕士学位论文 要求。 c l i e n t s e r v e r 俨r e s e n t a l i o nl o g i c ) i b u s i n e s sl o g i c i u s i n e s sl o g i c ) a t aa c c e s sl o g i c ) a t aa c c e s sl o g i c ) 图1 2 1 s u n 设计j 2 e e 的部分起因就是想解决二层化结构的缺陷。j 2 e e 的四层模 型如下: 1 、运行在客户端机器上的客户层组件,通常为w e b 浏览器或传统的应用程 序。 2 、运行在j 2 e e 服务器上的w e b 层组件,通常为j s p 页面或$ e r v l e t 程序,在 下文中,我们会进行更多的讨论。 3 、运行在j 2 e e 服务器上的业务逻辑层组件,通常为f _ j b 或者功能与之相似的 j a v ab e a n 4 、运行在e i s 上的企业信息系统( e n t e r p r i s ei n f o r m a t i o ns y s t e m ) 层软件,通常为 数据库,在下文中,我们也会进行更多的讨论。 2 3j 2 e e 的核心技术 j 2 e e 平台由一整套服务( s e r v i c e s ) 、应用程序接口( a p z s ) 和协议构成, 它对开发基于w e b 的多层应用提供了功能支持。j 2 e e 平台包含1 3 种核心技术, 如图1 2 1 。 6 浙江大学硕士学位论文 c l 结n t o r e s e r 妇t l o n 蛐b u s l n e 嚣l o g i c 锶韶 图1 2 2 j s p 是一种服务器方组件,它允许开发人员将j a v a 代码嵌入到h t m l 页面 中并且可以利用服务器端组件,从而可以在服务器端动态地生成h t m l ,x m l 以及其他结构化文档。 j a v as e r v l e t 提供的功能大多与j s p 类似,不过实现的方式不同。j s p 通常是 大多数h t m l 代码中嵌入少量的j a v a 代码,而s e r v l e t s 全部由j a v a 写成 并且生成h t m l 。与j s p 相比,s e r v l e t 效率更高,但程序的可读性很差,修改 和补充也相应变得困难。 j d b c ( j a v a 数据库连j 娶j a v ad a t a b a s ec o n n e c t i v i t y ) 提供统一的方式来对 各种各样的数据库进行存取,为开发人员隐藏了不同数据库的不同特性。另外, 由于j d b c 建立在j a v a 的基础上,因此还提供了数据库存取的平台独立性。j d b c 也是m i s 系统中最常使用的一项技术。 x m l ( 可扩展标记语言- - e x t e n d e dm a r k u pl a n g u a g e ) 是一种可以用来定义 其它标记语言的语言。它被用来在不同的商务过程中共享数据。x m l 的发展和 j a v a 是相互独立的,但是,它和j a v a 具有的相同目标正是平台独立性。通过 将j a v a 和x m l 的组合,可以得到具有平台独立性的解决方案。 j n d i ( j a v a 命名和目录接e 1 j a v an a m i n ga n dd i r e c t o r yi n t e r f a c e ) 被用于 执行名字和目录服务。它提供了一致的模型来存取和操作企业级的资源。 e j b ( e n t e r p r i s e j a v ab e a n ) ,j 2 e e 技术之所以赢得广泛重视的原因之一就是 7 浙江大学硕士学位论文 e j b 。它提供了一个框架来开发和实施分布式商务逻辑,由此很显著地简化了具 有可伸缩性和高度复杂的企业级应用的开发。e j b 规范定义了f - j b 组件在何时如 何与它们的容器进行交互作用。 r m i ( 远程方法调用一r e m o t em e t h o di n v o c a t i o n ) ,正如其名字所表示的那样, r m i 是网络上调用远程方法,就象使用本地的方法一样方便。它使用了连续序 列方式在客户端和服务器端传递数据。 j a v ai d l ( j a v ai n t e r f a c ed e f i n i t i o nl a n g u a g e ) ,在j a v ai d l 的支持下,开 发人员可以将j a v a 和c o r b a 集成在一起。他们可以创建j a v a 对象并使之可 在c o r b a o r b 中展开,或者他们还可以创建j a v a 类并作为和其它o r b 一起展 开的c o r b a 对象的客户。后一种方法提供了另外种途径,通过它j a v a 可以 被用于将你的新的应用和l e g a c y 系统相集成。 j t a ( j a v at r a n s a c t i o na r c h i t e c t u r e ) 定义了一种标准的a p i ,应用系统由此 可以存取各种事务监控。 j t s ( j a v a t r a n s a c t i o ns e r v i c e ) 是c o r b a o t s 事务监控的基本的实现。 j t s 规定了事务管理器的实现方式。该事务管理器是在高层支持j a v a t r a n s a c t i o na p i ( y r a ) 规范,并且在较底层实现o m go ,r s s p e c 1 c 棚0 n 的j a v a 映像。j t s 事务管理器为应用服务器、资源管理器、独立的应用以及通 信资源管理器提供了事务服务。 j m s ( j a v am e s s a g i n gs e r v i c e ) 是用于和面向消息的中间件相互通信的应用 程序接口( a p i ) 。它既支持点对点的域,有支持发布,订阅( p u b l i s h s u b s c r i b e ) 类型的域,并且提供对下列类型的支持:经认可的消息传递,事务型消息的传递, 一致性消息和具有持久性的订阅者支持。 j a f ( j a v aa p p l i c a t i o nf r a m e w o r k ) 是一套对应软件开发不同的应用层次 ( l a y e r ) 所提供的解决方案,是一个从底至顶包含很多内容的解决方案如: p e r s i s t e n c e 、b u s i n e s sc o m p o n e n tl o o k u p p o p u l a t e 、m e s s a g i n g 、l o g g i n g 、m v c 、 e x c e p t i o nh i e r a r c h y 、u n i tt e s t 等等。 j a v am a i l 用于存取邮件服务器的a p i ,它提供了一套邮件服务器的抽象类。 不仅支持s m ,r p 服务器,也支持i m a p 服务器。 8 浙江大学硕士学位论文 2 4 j s p 技术介绍 2 4 1 预备知识 1 h t m l 技术 h t m l 是h y p e r t c x tm a r k e dl a n g u a g e 的简写,即超文本标记语言,所谓超 文本,是指除了单纯的文字意外,它可以加入图片、声音、动画、影视等内容, 因为它可以从一个文件跳转到另一个文件,与世界各地主机的文件连接。用 h t m l 编写的超文本文档称为h t m l 文档,用户使用它网页浏览器( 如匝浏览 器) 对其进行浏览,能独立于各种操作系统平台( 如u n i x ,w i n d o w s 等) 。 h t m l 是一种标签语言,标签是用尖括号括起来的一些特殊字符,具有特定 的意义。如 是一个对字体设定的标签,网页浏览器会识别这些标签,进行 解释并显示。h t m l 主要包括以下几种标签: 单标签,只需单独使用就能完整地表达意思,最常用的单标签是 双标签由“始标签”和“尾标签”两部分构成,必须成对使用,其中始标签告诉w e b 浏览器从此处开始执行该标记所表示的功能,而尾标签告诉w e b 浏览器在这里 结束该功能。如 字体设置示例 ,在这一对标签中的文字被设 置为7 号字体。这类标记的语法是: 内容标签 可以说,对标签的使用贯穿了整个h t m l 编程的始终。掌握了标签的使用方法, 也就掌握了h t m l 语言。本节介绍h t m l 的基本结构和一些常用的标签( 更多 的内容请参照参考文献) h t m l 的基本结构: 头部信息 文档主体,正文部分 超文本文档分文档头和文档体两部分,在 之间的内容为文档头, 9 浙江大学硕士学位论文 在文档头里,对这个文档进行了一些必要的定义,如标题等内容,这部分内容不 在正文中显示。而在 可b o d y 之间的内容则是文档体的部分,它是超文本 文档的主题内容。看一个典型的h 恤l 文件。 h t m l ( h e a d ( t i t l e ) 学生信息一览表 ( f o r mi l l a l l e - ”f o r l 一1 ”m e t h o d - “p o s t ”a c t i o n - t r ( t dv r l d t h = ”1 眩 学号 ( t dv t d t h = ”1 眈” 姓名 性别 ( t dl i d t h - ”1 晚” 导师,t d ( t dw i d t h - ”1 眩- 。 手机 ( t dw i d t h = “1 魄” 寝室,t d 寝室电话 ( t dw i d t h = ”3 聘“) 常用邮箱( t d ( i t r t r ( b o d y ( i h t m l 这个例子中包含了几个经常用到的标签,分别是t a b l e ,仃,t d 以及f o r m ,i n p u t 。 前三个标签是一组。 定义表格 定义表行 定义表元 后两个标签是一组,m p m 定义按钮,t y p e 的值可以t e x t ,p a s s w o r d ,c h e c k b o x ,r a d i o , i m a g e , h i d d e n , s u b m i t , r e s e t ,当值为s u b m i t 时,点击按钮,则会执行f o r m 标签中 a c t i o n 所定义的动作。f o r m 定义表单,m e t h o d 的值可以为g e t 或者p o s t ,g e t 方 法把参数附加在u r l 地址上,有长度限制,最多不能超过2 5 6 个字符,而p o s t 方法则没有这一限制。a c t i o n 的值可以是另外一个u r l 地址。 2 j a v as c r i p t 技术 j a v a s c r i p t 语言是一种新型的s c r i p t ( 脚本) 语言,网页浏览器可以识别嵌在 h t m l 中的j a v a s c r i p t 语句,能够响应用户点击鼠标、输入表格、页面导航等类 1 0 浙江大学硕士学位论文 似的事件。我们以一些例子来加以说明。 h e l l ow o r l d ! d o c u 而e n t 而i t ;( “h e l l ow o r l d ) ; 这个例子的结果是在网页上显示:h e l l ow o r l d l 从以上例子中可以发现,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 做的简单计算器: f u n c t i o ne o m p u t e ( o b j ) o b j r e s u l t v a l u e = e v a l ( o b j e x p r v a l u e ) ) 计算器 请输入算式: 计算结果: 运行的结果,会在网页上出现两个文本框,一个按钮: 1 1 浙江大学硕士学位论文 在输入算式的文本框中输入要进行计算的表达式,再单击按钮,则结果在计算结 果的文本框中出现。 2 4 2 j s p 概念 j s p ( j a v a s e r v e r p a g e ) ,j s p 用于搭建网页,它由m m l 代码和嵌于其中的 j a v a 代码构成,由于加入了j a v a 代码。普通的h t m l 页面只能显示静态的内容, 无法实现与用户的交互,而j s p 页面则不同,不仅可以根据不同的用户显示不同 的内容,更可以与用户实现交互,接受用户提交数据,根据用户的需要对已有的 数据进行修改,删除或者新增数据。j s p 是m i s 系统中最常使用的一项技术。 2 4 3 j s p 标记 1 j s p 脚本 j s p 脚本分为三类,分别是声明语句、j s p 表达式以及最常被用到的 s c r i p t l e t 。 声明语句的格式为 ( 注:和! 之间不能留有空 格) ,这一类的语句是用来定义变量和方法的。如 是用 来定义变量的。而 则是用来定义方法的。 j s p 表达式的格式为 ,它的作用是把变量或者方法 的返回值直接输出到网页上。如 则在网页浏览器直接显示p i 的值3 1 4 1 5 9 2 6 第三类的j s ps c r i p t 被称为s c r i p t l e t ,这是在j s p 页面中最常被使用的, 它的格式为 。第一类的声名语句和第二类的表达式语句都可以 用它替代,采用j s ps c r i p t ,大部分的j a v a 功能都可以在其中被实现。但是, 必须严格限制s c r i p t l e t 的使用,原因在于,j s p 页面本身是用来构造界面的, 因此,凡是涉及到业务逻辑的代码,尽量避免出现在j s p 页面中,以便于后期的 阅读,维护和修改。 2i n c l u d e 标记 浙江大学硕士学位论文 i n c l u d e 标记的格式为 ,在编译时,它将被指向 的文件的输出插入到j s p 文件的输出部分,此过程为静态的,即被指向的文件的 输出被静态地加入到本标签在j s p 文件中所在的位置处,被指向的文件可以是一 段文本文件、h t m l 文件、j s p 文件或是由j a v a 语言编写的代码。这个标记的实 际效果是把i n c l u d e 中的文件和原文件合并。 3f o r w a r d 标记 f o r w a r d 标记的格式 ,他的作用是将客户端的 请求重定向到h t m l 文件,j s p 文件或s e r v l e t s 中,以它们来处理请求。 4d i r e c t i v e s 标记 这个标签定义将在整个页面中起作用的属性。 2 4 4j s p 运行原理 j s p 属于服务器端脚本语言,与j a v a s c r i p t 可以直接由浏览器识别并解释 不同,j s p 代码需要在服务器段进行解释。当客户端的网页浏览器发出访问某一个 j s p 网页的请求后,负责处理j s p 的服务器( 如t o m c a t ) 首先会检查被访问的j s p 页面有没有相对应的s e r v l e t ( 一种特殊的j a v a 类) ,如果有的话直接调用该 浙江大学硕士学位论文 s e r v l e t ,如果没有则要把j s p 转化成s e r v l e t 。最后转化成h t m l 代码传输给客户 端。流程如图2 4 1 。 请求 f i 。网页浏览器 应答 f 1 【 图2 4 1 以一个显示时间的j s p 文件为例,加以说明。 ( t i t l e 显示当苜时闩 ( h e a d 服务器端时间 年 月 日 客户端时闩 v a rw h e r l = n e wd a t e ( ; d o c u m e n t w r i t e ( w h e n g e t y e a r o + 晖”) 一 d o c u m e n t w r i t e ( w h e n s e t m o n t h o + l + ”月) ; d o c u m e n t w 耳l t e ( w h e n g e t d a t e ( ) + ”日”) ; i i h t m l 在这个例子中,除了有h t m l 和j a v a s c r i p t 代码以外,还有所谓的“j s p s c r i p t ”代码,正是这些代码使得j s p 不同与普通h t m l 的。这一类的代码遵循 j a v a 的语法,可以调用j a v a 的类库,使得j s p 的功能可以变得非常强大,而页面 却可以很简洁。 另外一点需要强调的是,j s p 是在服务器端被解释,然后转发给客户端测览 器的,与之相对应的是j a v a s c r i p t ,直接在客户端浏览器被解释。从上面显示 日期的例子可以看出这一区别。其中前半部分是利用j s p 代码来显示时间的,由 于j s p 的运作机理,所以显示的是服务器的当前时间:而后半部分利用 j a v a s c r i p t 来显示时间,显示的客户端的当前时间。 1 4 浙江大学硕士学位论文 2 5 j 2 e e 的优势 j 2 e e 为搭建具有可伸缩性、灵活性和易维护性的信息系统提供了良好的机 制,应用j 2 e e 构建的系统具有以下几方面的优势。 1 、保留现存的r r 资产 j 2 e e 架构可以充分利用用户原有的投资,如b e a t u x e d o 、m mc i c s ,m m e n c i n a , 、i n p r i s ev i s i b r o k e r 以及n e t s c a p ea p p l i c a t i o ns e r v e r 。这之所以成为可能 是因为j 2 e e 拥有广泛的业界支持和一些重要的供应商的参与。每一个供应商都 对现有的客户提供了不用废弃已有投资,进入可移植的j 2 e e 领域的升级途径。 由于基于j 2 e e 平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的 操作系统和硬件也能被保留使用。这样,一个以渐进的( 而不是激进的,全盘否 定的) 方式建立在已有系统之上的服务器端平台机制更容易被用户所接受。 2 、高效的开发 j 2 e e 允许把一些通用的、很繁琐的服务端任务交给中间件供应商去完成。 这样开发人员可以集中精力在如何创建业务逻辑上,相应地缩短了开发时间。高 级中间件供应商提供以下这些复杂的中间件服务: 状态管理服务一让开发人员写更少的代码,不用关心如何管理状态, 这样能够更快地完成程序开发。 夺持续性服务一让开发人员不用对数据访问逻辑进行编码就能编写应用 程序,能生成更轻巧,与数据库无关的应用程序,这种应用程序更易于 开发与维护。 分布式共享数据对象c a c h e 服务一让开发人员编制高性能的系统,极 大提高整体部署的伸缩性。 3 、支持异构环境 j 2 e e 能够开发部署在异构环境中的可移植程序。基于j 2 e e 的应用程序不依 赖任何特定操作系统、中间件和硬件。因此设计合理的基于j 2 e e 的程序只需开 发一次就可部署到各种平台。这在典型的异构企业计算环境中是十分关键的。 j 2 e e 标准也允许客户订购与j 2 e e 兼容的第三方的现成的组件,把他们部署到异 构环境中,节省了由自己制订整个方案所需的费用。 4 、可伸缩性 浙江大学硕士学位论文 服务器端平台应能提供极佳的可伸缩性去满足那些在他们系统上进行商业 运作的大批新客户。基于j 2 e e 平台的应用程序可被部署到各种操作系统上。例 如可被部署到高端u n i x 与大型机系统,这种系统单机可支持6 4 至2 5 6 个处理 器。( 这是n t 服务器所望尘莫及的) j 2 e e 领域的供应商提供了更为广泛的负载 平衡策略。能消除系统中的瓶颈,允许多台服务器集成部署。这种部署可达数千 个处理器,实现可高度伸缩的系统。 5 、稳定的可用性 一个服务器端平台必须能全天候运转。因为i n t e r n e t 是全球化的、无处 不在的,即使在夜间按计划停机也可能造成严重损失。若是意外停机,那会有灾 难性后果。j 2 e e 部署到可靠的操作环境中,他们支持长期的可用性。一些j 2 e e 部署在w i n d o w s 环境中,客户也可选择健壮性能更好的操作系统如s u n s o l a r i s 、 m m o s ,3 9 0 。 浙江大学硕士学位论文 第三章m i s 系统可重用模式的研究 建立m i s 是组织和实现现代化管理、处理日益膨胀信息的重要环节,它在 各行各业中得到广泛地实施与应用,并为企业带来巨大的活力与效益许多企业 m i s 建设的成效不很显著,主要原因来自于两个方面:一方面是由于企业面临急 剧变革,企业内部组织机构、职能、权限面临调整改革,使得m i s 处于多变与 不稳定之中。另一方面,m i s 开发本身分散,多以开发者的个人技巧、经验为主, 采用手工操作的方式,信息封闭,所开发出的m i s 仅适应于某一个层面,适用 性差,开发缺乏整体性、系统性,开发周期长( 因为每次开发都是从头做起) ,开 发费用高,效率低下,运行,特别是维护困难。 因此,摆在m i s 开发者面前的急需解决的两个问题:一、如何减轻m i s 开 发者的工作量。有效利用以往m i s 建设中的成功经验和所己开发出的公共构件, 避免低效重复劳动,自动生成应用系统程序或者实现大范围的软件构件的复用: 二、如何建设高效、可靠、适应性强的m i s 应用系统。使之功能强,界面友好, 易于操作,维护简单。即系统的抽象部分与领域相关的具体部分实现有效的分离 要实现软件开发的工业化与流程化,最好的解决方法是软件的复用。在分析 了众多的管理信息系统后发现,管理信息系统的开发与研制并不是无章可循,除 了自身领域内的特有知识以外,管理信息系统软件所设计的过程、开发模块、软 件的操作等方面都存在着共同的特性,我们称之为共性,即通用性。本章讨论 m i s 系统设计中共有的一些问题和原则,以便为后续开发提供经验和借鉴。 本章首先讨论了m i s 系统通常所采用的两种系统模型以及文件系统的分布, 接着分别讨论了w e b 层和数据库持久层的设计问题。 传统的w e b 层采用j s p 技术实现,而j s p 技术有着先天不足的缺陷,它是 由h t m l ,j a v a s c r i p t 以及s c r i p t l e t 三种代码混合而组成的,同时j s p 页面又不 具有j a v a 语言面向对象的特点,使得j s p 页面代码很容易就变得复杂混乱,而 不便于阅读和维护扩充,也不利于代码的重用。另外一方面,j s p 页面既被用来 搭建用户界面,又同时被用来实现业务逻辑,这种方式使得系统得结构性被破坏, 1 7 浙江大学硕士学位论文 不利于模块化设计。 针对w e b 以上的缺陷,本文提出了相应得解决方案。针对第一个问题,提 出了j s p 级别代码重用的概念,从而减少代码量,使代码可读性和可维护性增强。 针对第二个问题,对j s p 的功能重新进行界定,将业务逻辑部分排出在j s p 代码 之外( 实际上s t r u t s 架构就是针对这一问题而提出的解决方案) ,这样做不仅仅 使得j s p 的功能简化,也使得系统模块化程度更高,同时又做到了代码重用。 w e b 层设计的改动,必定是和数据库持久层的改动是同步的。为了做到j s p 级别代码的重用,需要对数据

温馨提示

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

评论

0/150

提交评论