




文档简介
四川大学 硕士学位论文 基于J2EE技术的网上旅费报销系统的研发 姓名:伍凌云 申请学位级别:硕士 专业:软件工程 指导教师:尹皓;罗积玉 20040520 丫6 5 4 0 2 3 基于J 2 E E 技术的网上旅费报销系统的研发 软件工程领域 研究生:伍凌云指导教师:尹皓、罗积玉 J 2 E E 是美国S u n 公司刚刚推出的一种全新概念的模型, 本文介绍的是在一个 网上旅费报销系统的开发过程中对J 2 E E 技术的应用。 在当今竞争激烈的市场中, 软件开发商正面临着一种艰难的挑战: 既要在业已缩短的开发周期内降低成本, 又要提供广泛的电子商务服务。采用J 2 E E 无疑是一个很好的选择,它是被设计 为顾客、雇员、供应商、合作者提供企业级服务,但这样的应用程序也具有天 生复杂性。而现在软件企业面临着日益激烈的商业竞争,不得不尽力缩短其软 件开发周期以增强其竞争力,为了实现这个目 标,很多软件企业都采用了 J 2 E E 技术,并且对它进行深入的研究和改良来适应竞争的需要。本文所介绍的网上 旅费报销系统就是在基于J 2 E E 技术的可重用构架之上进行研发的,以 E C L I P S E 为主要开发平台,环境配置采用W A S 为企业应用服务器,企业信息系统采用 D B 2 。对于普通的J 2 E E 应用程序而言,这个系统的开发周期较短,其涉及J 2 E E 的 J S P . J a v a S e r v I e t A P I、E J B . J D B C . J N D I 和事务管理中间件等核心技术, 具有较大的开发难度,但由于是在可重用构架上进行的开发,开发过程中巧妙 地运用了J 2 E E 技术,实现一些以往开发资源的重用,这就大大的缩短了开发周 期。就这个网上旅费报销系统质量而言,这样有统一框架下设计出的应用程序 天生就具有较好的结构,它采用了面对对象的编程思想进行程序开发,从程序 的设计上就具有较高的质量;另外, 这个系统也收到了 较好的应用效果,目 前 正处于试运行阶段,运行状况良 好。 这个项目 是由四凯计算机技术工程有限责任公司提供,本文介绍了这个项 目 W e b 层和E J B 层的设计与实现过程, 通过介绍这个分布式电 子商务应用程序的 开发过程, 我们将展现J 2 E E 构架在实际应用开发中的 优越性。 关键词:J 2 E E网上旅费报销系统 电子商务应用程序 T h e D e v e l o p me n t o f O n L i n e T r a v e l l i n g E x p e n s e s r e i mb u r s e me n t S y s t e m b a s e d o n J 2 E E s t a n d a r d S o ft w a r e E n g i n e e r i n g D o ma i n P o s t g r a d u a t e : Wu L i n g - y u nA d v i s o r : Y i n H a o , L u o J i - y u S i n c e i t s i n t r o d u c t i o n m o r e t h a n t w o y e a r s a g o , t h e J a v a 2 P l a t f o r m , E n t e r p r i s e E d it io n ( J 2 E E ) , h a s r a p id l y e s t a b l i s h e d a n e w m o d e l f o r d e v e l o p i n g d i s t r i b u t e d a p p l i c a t io n s ) . T h is t h e s i s i n t r o d u c e s t h e u s in g o f t h e J 2 E E s t a n d a r d i n th e p r o g r a mm i n g o f a r e a l e - c o mm e r c e a p p l i c a t i o n s y s t e m o n a c e r t a i n f r a m e w o r k . T h e a r c h i t e c t u r e o f J 2 E E i s e n d s t o e n d s s o l u t i o n , i t h a s a s e r i e s o f d i ff e r e n t J a v a t e c h n o l o g i e s , t h i s m a d e i t d i ff i c u l t t o b u i l d s u c h a d i s t r i b u t e d a p p l i c a t i o n s b a s e d o n J 2 E E p l a t f o r m t h a n t h e o t h e r s . A l t h o u g h t h e J 2 E E s t a n d a r d o ff e r s a s i m p l i f i e d p r o g r a m m i n g m o d e l c o m p a r e d t o p r e v i o u s a lt e r n a t i v e s , t h e p l a t f o r m i s n t m o n o l i t h i c . A n d t h e s o ft w a r e c o r p o r a t i o n s c o n f r o n t w it h m o r e a n d m o r e c o m p l i c a t i o n d a y t o d a y , t h e y h a v e t o s i m p l i 勿a n d s t a n d a r d i z e t h e k i n d o f d i s t r i b u t e d a p p l i c a t i o n s r e q u i r e d f o r t o d a y s n e t w o r k e d i n f o r m a t i o n e c o n o m y , i n o r d e r t o d o t h a t , o n e s o ft w a r e c o m p a n y b u i l t a n r e - u s e a b le f r a m e w o r k b a s e d o n J 2 E E s t a n d a r d . T o d e v e l o p a n e n t e r p r i s e s E - c o m m e r c e a p p l i c a t i o n p r o g r a m b y u s i n g t h i s J 2 E E t e c h n o l o g y n o t o n l y i m p l e m e n t s t h e r e u s i n g o f d e v e l o p i n g r e s o u r c e s i n t h e f i r s t t i m e , b u t a l s o d o e s t h e r e u s i n g o f t h e r e s o u r c e s i n d i ff e r e n t e n t e r p r i s e s e - c o mm e r c e p r o g r a m . T h i s m a d e i t p o s s i b l e t o b u i l d t h e s e p r o g r a m s m o r e e ff i c i e n t l y . I n t h e p a p e r , I w i l l i n t r o d u c e y o u t h e p r o c e s s o f t h e p r o g r a m m i n g b y u s in g t h i s J 2 E E t e c h n o l o g y p l a t f o r m , a n d w e w i l l c o m p a r e i t w i t h u s i n g t h e i n t e r f a c e p r o v i d e d b y J 2 E E p l a t f o r m d ir e c t l y t o s h o w t h e me r i t s o f a b o v e . K e y w o r d s : J 2 E E O n L i n e T r a v e l l i n g E x p e n s e s r e i m b u r s e m e n t S y s t e m D i s t r i b u t e d A p p l i c a t i o n s 四川大学丁程硕士学位论文华于J 2 E E 技术的网 钱费报销系统的研发 1 引言 最近两三年,中间件在国内 市场已开始走向热潮,国内的著名软件公司都 在开发中间件,以争取市场份额。中间件在国内已经成为各行各业信息系统建 设不可缺少的重要组成部分.正在成为“ 信息化中国” 的基础构件。中间件作为 基础软件的重要组成部分,是目前我国在基础软件领域夺取主动权的切入点和 突破口。能否抓住此次机遇是“ 十五” 期间我国软件产业能否实现跨越式发展的 关键。要想增强市场竞争力,必须以市场导向和导向市场相结合,以企业为主 体,产、学、研密切合作,及时跟踪、研究国外中间件技术及产业发展动向, 研究相应的技术规范和行业标准, 在组织、管理、 机制、 监督等方面进行创新, 推动技术创新和产业的持续发展以 及同国际接轨等战略和对策2 ) 本文介绍了使用基于J 2 E E 技术的可重用构架开发一个网上旅费报销系统 的过程。在当今竞争激烈的市场中,软件开发商正面临着一种艰难的挑战:既 要在业己缩短的开发周期内降低成本,又要提供广泛的电子商务服务。采用 J 2 E E 无疑是一个很好的选择,但这样的应用程序也具有天生复杂性,建立访问 和管理来自各种各样的企业资源的数据和应用所需的中间层管道工程往往需要 耗费大量时间和金钱,任何肩负创建高可用和可靠的商业应用的人员都知道这 项工 作 有多 复杂。 J 2 E E 的 应 用编 程 模型( 也 叫 J 2 E E B lu e p r in t s 3 1 ) 提供 一 种 包 含 用于实施基于J 2 E E 的多层应用的文档和实例套件的体系模型, 部分简化了这项 复杂的工作,它应被用作开发人员设计和优化组件的原则,以便从策略上对开 发工作进行分工,分配技术资源。而对重视缩短项目周期的公司来说,这种简 化仍然不够,于是一些开发应用软件的企业在面对对象思想基础上提出标准构 件重用这一观念,他们推出了基于J 2 E E 的x F r a m e w o r k x F r a m e w o r k 是对J 2 E E 构架的扩展,它保留了基于J 2 E E 应用的优点,而且实现了开发资源的重用,大 大缩短了提供企业级服务应用程序的开发周期。 四川人学工程o l士 学位论文 荃十J 2 E E 1 支 tK fi ! M 旅费 报销系 统的El I 发 2 相关的基本理论 2 . 1 J 2 E 程序构架及各种组件 3 2 E E 体系结构是一个多层的、 端到端的解决方案, 该体系结构横跨客户层 到表示层、 业务层, 最终到达企业信息系统2 1客户层通常是由 一台桌面计算 机 ( G U I )组成的,客户可以使用G U I 与应用程序进行交互。中问层是由一个 或多个应用服务器组成,应用服务器处理客户的请求,执行复杂的表示和业务 逻辑, 然后将结果返回给客户层。 企业信息系统 ( E S I ) 层也称为数据层, 它是 驻留业务数据的地方, 在处理业务 逻辑的时候,由中间 层访问 E S I 4 1 。 如图I : 一 客户层 表示层:S e v e r , J S P , J A S P 业务层 E J B I E I S 层 安全技术:J A A S 1 2 EE 通讯支持技术J N D I . R MI 一1 1 0 P 等 J a v a 2标准版 ( J 2 S E ) 十、 图2 -1 J 2 E E 的体系结构 J 2 E E组件有几部分组成,其中包括应用编程模型、标准实施平台、用来 测试是否符合J 2 E E 的兼容性套件和实施参考资料。这种最新版的J 2 E E 巩固了 J a v a 2 标准版中的特征,在巧妙处理困扰 J a v a 的性能和安全问题的同时,增强 了 可 伸缩性 它 添加了 对 E n t e r p r i s e J a v a B e a n s , J a v a S e r v l e t A P I 和 J a v a S e r v e r P a g e s ( J S P )的 全力支持。 其 最终目 的 就是 成为 一个能 够使企 业开发 者 缩 短投 放市场时间的体系结构。J 2 E E 的各种组件介绍如下: 我们就J 2 E E 的各种组件、 服务和A P I ,进行更加详细的阐 述, 看看在开发 不同类型的企业级应用时,根据各自 需求和目 标的不同,应当如何灵活使用并 组合不同的组件和服务5 1 S e r v l e t 16 1 S e r v l e t 是J a v a 平台上的C G I 技术。S e r v l e t 在服务器端运行,动态地生成W e b 2 四川人乍于 程f ; I 学位论文基于J 2 F F 技术的网 卜 旅费报销系级的研发 M o d e l / V i e w / C o n t r o l 是软件设计的典型结构。 在这种设计结构下 , 一个应用被分 为 一 个部分: M o d e l , V i e w 和C o n t r o l l e r , 每个 部分负责不同的功能。 M o d e l 是指 对业务数据/ 信息的处理模块,包括对业务数据的存取、加工、综合等;V i e w 是指用户界面,也就是面向用户的数据表示;C o n t r o l l e r 则负责V i e w 和M o d e l 之 间的 流程控制,也就是完成两个方向的动作:1 . 将用户界面( V i e w ) 的操作映射 到具体的Mo d e l , 以完成具体的业务逻辑; 2 , 将通过Mo d e l 处理完的业务数据及 时 反 应到 用 户 界 面 ( V ie w ) 上p o f 人们通常将模型一 视图一 控制器 ( M V C )设计模式应用于需要某类人机界面 的情形。该模式源自 S m a l l t a lk社区,在那里用它来构建灵活的且可重用的用 户界面。S e r v l e t天生就适合于 MV C设计方法。在这种体系结构中,模型是 指正在被访问数据的结构和类型。模型组件通常包含业务逻辑,业务逻辑控制 数据访问并为一个或多个视图服务。视图提供了用户界面,用户或应用程序组 件可以通过用户界面来访问模型。可以用多个视图来提供模型的各个界面。最 后,控制器组件协调整个通信。控制器处理客户机输入、操作模型以及决定将 哪个视图发送给给定的客户机。 从体系结构的角度, 会话 b e a n可以用作视图、 控制器或甚至模型本身。通常,它们还实现虚包 ( F a c a d e )模式或业务委派 ( B u s i n e s s D e l e g a t e ) 模式 ( 请参阅 参考资料) 。 s e r v l e t ( 或 J S P页面) 、 帮助 s e r v l e t的 J a v a B e a n( 或 J S P页面) 、另一个企业 b e a n可以访问会话 b e a n , 也可以直接通过 a p p l e t , S w i n g应用程序或其它 J a v a应用程序访问会话 b e a n I f 0 I 2 . 2 . 2 企业级资源连接 对于Mo d e l 部分,也就是业务逻辑的处理部分,一般总是对商务数据进行 处理、加工、综合等。对于数据库而言, 这应当是大家熟悉的领域。我们通过 使用数据库驱动程序,利用S Q L 来查询、 操纵数据库。 而对于其它的 企业级应 用而言,一般这些应用都会提供A P I , 通过这些A P I ,其它的应用就能够存取访 问其中的数据,甚至是触发这些企业级应用中的一些业余流程。 2 . 2 . 3 企业级平台的特征, 企业级应用需要使用优秀的企业级应用体系结构,而优秀的企业级应用体 四川大学工程硕 于 学位论文基于J 2 E E 技术的网上旅费4 K i f 系统的研发 系结构通常来自于优秀的解决方案 应用程序设计升始就要考虑其体系结构的 合理性、灵活性、健壮性,从而既可满足企业级应用的复杂需求,也能为今后 系统的调整和升级留有余地。体系结构影响了整个应用的生命周期,实际上能 够延长整个应用的生命周期,同时增强了用户在多变的商业社会中的适应性 减少了系统维护的开销和难度,从而给用户带来最大的利益。 一个理想的企业级应用系统平台应该具有如下特征: 令 部署、开发和维护的有效性; 令 系统运行的健壮性和可靠性; 令 具备失败恢复的能力; 令 能够处理海量的数据; 令 能够同时支持数百个用户: 令 具备很高的安全性; 令 数据的高可用性; 令 可以迅速地开发和部署新的应用程序; 令 简化组件重用; 令 直观的编程模型; 令 支持行业标准和通用编程接口; 命 适用与小、中、大各种规模的应用系统; 令 系统费用随系统规模的增长而线性增长; 今 不断进行技术升级,以满足不断涌现的需求。 2 . 2 . 4 使用J 2 E 架构企业级应用 为了 满足架构企业级应用的 需求, J a v a 的 创始人S u n 公司 在早期的 J 2 S E ( J a v a 2 P l a t f o r m S t a n d a r d E d i t i o n ) 基础上, 针对企业级应用的 各种需求, 主导并 创造 了J 2 E E ( J a v a 2 P l a t f o r m E n t e r p ri s e E d i t i o n ) . 那么到底什么是3 2 E E 呢?从整体上讲,J 2 E E 是使用J a v a 技术开发企业级应 用的一种事实上的工业标准( S u n 公司出 于其自 身利益的 考虑,至今没有将J a v a 及其相关技术纳入标准化组织的 体系) , 它是 J a v a 技术不断适应和促进企业级应 用过程中的产物。目 前,J a v a 平台有三个版本:适用于小型设备和智能卡的 J 2 M E ( J a v a 2 P l a t f o r m M ic r o E d it i o n ) 、 适 用 于 桌 面 系 统的 J 2 S E 和 适 用于 企 业 级 应 四 卜 气 学1 程硕上学位论文基于J 2 E E 技术的网七 旅费报销系统的研发 2 . 2 . 5 使用J 2 E E 架构企业级应用的三个阶段: 川发阶段 We b 组件: E J B 组件 图2 -4 J 2 E E 架构企业级应用的三个阶段 开发阶段在开发期间,W e b 组件开发人员开发封装表示逻辑的W e b 组 件, 然后他们将这些组件转换成w a r 的形式供其他人使用。 E J B 组件开发人员开 发封装业务 逻辑的 E J B 组件, 然后他们将这些组件转换成e j b - j a r 的形式供其他 人使用。 装配阶段由 装配人员装配这些已 经开发好的 w a r 和e j b - j a r 文件, 然后 将它们装配成单一的企业归档 e a r )文件。 部署阶段在这个阶段, 部署人员得到装配好的e a r 文件, 检查部署描述 符,配置好应用环境,使系统能在这个环境上执行和部署。此后,管理员负责 监控和管理应用程序和应用服务器3 2 . 2 . 6 J 2 E 定义的多种角色及其职责 应用组件提供商提供J 2 E E 应用组件的程序员和商业公司称为应用组 件提供商。 存在两种类型的应用组件提供商: W e b 组件提供商和E J B 组件提供商。 应用程序装配商具有业务领域的专业知识,能够理解如何将应用程序 中不同的组件整合到一起以符合商业目 标的J 2 E E 应用程序设计师或者增值软 件应用供应商。 四川大学 程硕 1 : 学位论文 纂于1 2 E E 技术的网 C . 旅费报销系统的研发 应用程序部署商将e a r 文件部署到应用服务器上, 并使应用程序投入运 行的团体。 J 2 E E 产品提供商提供支持J 2 E E 1 .3规范要求的所有J a v a 技术的应用 服 务器 的 供 应商 13 1 2 . 3 基于J 2 E E 技术的x F r a m e w o r k 可重用程序构架LI 2 说明 现在的软件开发己经从过去传统的方式步入了模块化、构件式的时代。目 前,这种由S u n 所倡导的J 2 E E / E J B 企业级软件构件应用技术已经得到了广泛的 应用。一软件企业在W e b l o g i c 平台上对应用系统的开发进行规范、 研发并提出 了 x F r a m e w o r k 框架1 8 1 。 使用这一 框 架标准的 好处 在于除了 统一程序的 基 本构 架 之外,还可再利用已开发过的软件产品,因此与过去的软件开发相比,在开发 效率上有了飞跃性的提高。更重要的是,利用这个框架和配备的开发工具包, 每一个普通的软件开发人员都能够像标准软件工程师一样轻松地进行软件开 发,顺利解决了过去软件企业对软件工程师的过分依赖问题。在这一框架下, 提供给开发者进行构件开发的规则和模板以及相应的技术开发包,使得在此框 架下开发出来的软件构件可以在不同的企业之间彼此通用和重复利用,而这实 际上是一种构件的开发标准。 如图5 所示,以J 2 E E 技术为核心的x F r a m e w o r k 按功能结构可分为四层,由 J 2 E E 应用服务器、 x F r a m e w o r k . X I -F r a m e w o r k L a y e r 和 各业务相关的共同部 品层。 一 各 业 务 相 关 的 共 同 部 品 X I- Fram ew ork一 汪 ram 一 k JZE E A ppliOat i。 5 一 】 各业务相关的共同部品 X I 一F r a m e w o r k L a y e r x F r a me wo r k J 2 E E A p p l i c a t i o n S e v e r 图2 -5 : x F r a m e w o r k 示意图 四川大学工程硕 卜 学位论文 基4 - J 2 E E 技术的网旅费 报销系统的研发 其中, x F r a m e w o r k 为 核心 构架; X I -F r a m e w o r k L a y e r 为 其面向 各 企 业应 用 程序的扩 一 展构架;针对一个特定的企业应用程序,它的各种业务需要很多共同 的处理方法,如合法输入判断、业务数据基本逻辑判断等,为增加起结构的合 理性,此构架设置了共同部品层,从而实现各种业务需要的共同处理;另外, 在这些程序和相关的部署描述文件的编写完成后, 只执行x F r a m e w o r k 提供的打 包部署工作即可将这个企业应用部署到指定的J 2 E E 应用服务器_ 丘 。这个构架还 包括一系列的规范, 按照这些规范所开发的企业级应用程序保留了J 2 E E 应用程 J的特征,符合J 2 E E 的规范。 四川大学工程硕 七 学位论文基十J 2 E E 技术0 ; 网1 .旅费 报销系统的研发 3 网上旅费报销系统的设计 这是一个基于 J 2 E E技术的电子商务应用,通过这个网上旅费报销系统, 一 个大型跨国企业的出差员工可以在各地用 工 n t e r n e t 网白 接报销旅费。 由于互 联网的使用,相对于传统的出差旅费报销方式而言,这种网上旅费报帐方式就 更加快速和方便。开发此系统采用的主要技术为 J 2 E E .由于是在现有的 x F r a m e w o r k构架上进行的开发,整个程序的设计与实现都执行了 x F r a m e w o r k 的 特定 标准, 符合J 2 E E 的 规范。 开 发平台 采用E C L 工 P S E 0 , 服务 器使用W A S u , 数据库使用D B 2 o 3 . 1 概要设计 3 . 1 . 1 程序构架的设计方案 按照J 2 E E 应用的程序设计方案,这个网上旅费报销系统采用了模型一 视图- 控制器 ( M V C )的设计模式。 基本构架分为四层: 客户层、 表示层和业务E J B 层, 它们所要完成的功能如下图所示: 客户层 完成信息的显示功能 实现系统的访问安全机制 报帐单输入数据的逻辑判定 表示层 各种数据信息检索 各显示画面的迁移控制 业务层 实现对报销单数据表的新建、订正和删除 呕卜旅费扣详系纷 企 业 信 息系统 存放报销单数据表和一些报销的相关信息 图 3一 1 网上旅费 报销系统的基本构架 四川火学工程f ,j? ! 士学位论1 基于J 2 E E 技术的网上 旅费 报销系统的研发 按照模型一 视图一 控制器 ( M V C ) 的设计模式, 在这个系统的构架中, 模型组 件包含了业务逻辑,业务逻辑控制数据的访问并为一个或多个视图服务,我们 使用E J B 层的业务E J B 来实现模型组件的设计。在视图部分我们采用了表示层 的J S P 页面来进行设计,视图提供了用户界面,用户或应用程序组件可以通过 用户界面来访问模型,可以选择使用多个视图来提供模型的各个界面。最后, 使用控制器组件协调整个通信,控制器处理客户机输入、操作模型以及决定将 哪个视图发送给给定的客户机,我们把这个控制器组件设计在表示层,用多个 J a v a B e a n 来实 现。 3 . 1 . 2 程序功能模块设计方案 这个系统的设计我们使用了基于J 2 E E技术的可重用构架x F r a m e w o r k ,这 使我们的设计工作得到了简化,它己经很大程度上的实现了旅费报销系统的构 架设计。我们需要对使用 x F r a m e w o r k构架对旅费报销系统的功能模块进行设 计。主要分为 W e b 层和 E J B层的功能模块设计,如图6 ,图7 所示: W七 b 层 Pr e P r o c e s s Ha n d l e r 请求预处理: 非法访问抵制 同一会话对象对黄等 DE - D A O R e q u e s t H and l e r 加人INsERVL 图 3一 2 W e b 层设计方案 四川大学J _ 程硕 七 学位论文 华 I - J 2 E E 技术的网七 旅费报销系统的研发 在用户不进行数据库操作或只进行数据库查询操作时,程序只进行 WE B 层处理;而用户需要做和数据库有关的其它操作,如业务数据的新建、删除、 订正就需要使用E J B层进行处理, PreProcessHand EJBCont工oller 请求预处理 非法访问抵制 同一会话对象对策 I E J B 控 制 A R e q u e s t H a n d l e r 数据逻辑判定 输入基本逻辑检查 检查数据项存在于数 据库中 EVent StateHandle s es si on 内容例 E J B的调用 NAINsERVL We b C o nt r oll er S e s 4 i o n 对象 E J B层的处理调用 Sta七e U7长 andlerRes We bM0de工 R e d u e s t对象 M o d e l 更新监视 E J B层处理结果取 Ilk * 仃 A L F 理结果设置 F1owHandler 画面迁移控制 刁 , ! J S P s si on 三 口Uest 处理结果调用 DB 图 3一 3 E J B 层设计方案 从开发过程划分,其主要分为WE B层和E J B层的开发,但从实际开发的 需要,必须先完成共通部分的开发,然后再进行业务程序的编写。共同部分包 括各个业务需要调用的公共类和方法,业务部分包括WE B层和E J B层的各种 1 5 四川大学 1 程硕 卜 学位论文 基 l 飞 J 2 E E 技术的IM 1 . 旅费报销系统的研发 N IV .务 在整 个系统的设计中,我们遵照用户内要求,把系统分为四个业务部分和 一个共通部分,由四个业务部分来完成用户 报帐需要的不同业务的处理,由 个共通部分来完成对四种业务需要的共同处理。 3 . 2 系统中一个业务的详细设计 这个网上旅费报销系统的详细设计主要包括业务机能设计和各主要对象的 功能设计,业务机能设计中包括有共通部品功能的设计,饮食、交通、F业务 和其它活动的业务逻辑设计,还包括有一些功能的具体设计,如报销单一览、 报销单的检索、报销单数据项的订正、删除的行操作以及用户画面的迁移控制 等。我们介绍其中的一个业务的部分设计 3 . 2 . 1 用户画面的详细设计方案 报销单一览钮, 系统会调用W e b 层R e q u e s t H a n d l e r 对输入的 数据进行业务 逻辑检查,检查完毕后可输出报销单主画而,也可以进入报销单详细画面的填 写。进入报销单的输入画面后,点击确认画面,画面将会回到这个业务的活动 一览画面,画面上记录完成一项自 动更新;同时,系统调用E J B层的业务E J B 的数据表单新建方法,完成对报销单 数据的存储。 在与报销单新建主画面并行的还有报消单的订正和报销单的删除画面,对 应的报销单数据信息都己列表的形式给出,用户选中该行就可以进行订正和删 除操作。在这些画面中设置的这些功能按钮,除了控制画面的迁移按钮以外, 还有 很多 业务 数据的 查询按 钮, 点击 这些 按 钮, 系 统会 调用R e q u e s t H a n d l e r 中 的 P O P U P程序在企业信息系统中进行相关的查询操作。如果在报销单的填写 中有数据输入错误和操作错误,程序会调用相应的报错程序,发出报错信息和 提示信息。另外,所有的J S P页面的大小,内容显示按照客户方的要求都有相 关规定。 以F 业务报销单的新建功能为例,我们对它的画面迁移控制设计如下: a 大学 ! 程硕 上 学位论文基于J 2 E E 技术的网上 旅费 报梢杀 吮的研发 图 3一 4 报销单的新建画面迁移图示 F 业务报销单的删除、订正等功能的画面控制设计和此图大致相同。 四川大学丁程硕七 学位论文基于1 2 E 6 技术的网1 . 放费州销系统的研发 3 . 2 . 2 业务的业务逻辑详细设计方案 这个业务的设计由5 个部分组成: 业务处理机能定义书、 业务II !i面定义书、 报悄单模版定义书、相关业务数据的逻辑检查定义书及补充资料,我们以业务 处理机能定义书为例进行说明 这个业务的处理功能按照III j 面来进行划分,也就是每个画面对应于特定的 处理功能,如报销单创建确认画面。 开发时序图: Ma l n s e 四 r r e p r o ces 嘴 P r e p r o c c s S 认笼 七 Co n r r o l l e r E 7 l i co o t r oi l e r S t a t e h a n d l e r 图3 -5 报销单创建确认画面开发时序图 对应于图中对象方法的标注,在这个画面中需要完成 3 个业务逻辑有关的 操作: 方法 1 :取得登陆用户的I D 和系统时间,在对应的5 t a t e h a n d l e r 中 添加该 方法。 方 法 2 :对数据库中A 0 0 0 1表相关数据进行更新, 这些数据由 E v e n t 对象从 四川大学工程硕 L 学位论文基于J 2 E E 技术的网 i 旅费报销系 统的研发 W e b 层传入E J B 层,目的是为吏新此业务的相关活动一览, 在该业务的E J B 中完成 此方法。 方法3 : 对数据库中A 0 0 0 2表和A 0 0 0 2 表相关数据进行插入操作, 作用是在数据 库录入该活动需要报帐的相关信息,在该业务的E J B中完成此方法。 这样, 用户在 J S P )II 1= 传入的报帐信息经过一系列的处理后, 再通过F J B 层的操作就传入企业数据库了。 U 明日 火学下程硕 ! _ 学位论文琴于 1 2 E F . 技术约网 旅费 报销系统的 研发 4 网上旅费报销系统的实现 在整个系统的实现过程中, 我们遵照特定的规范继承和 使用可重用构架提 供的基类和接口,在这些基类和接口中己经完成了与分布式系统有关的大部分 基础工作,减少了这个程序的开发量,同时也提高了 编程效率,并且使整个程 序有规范的结构。从开发过程划分,其主要分为W E B 层和E J B 层的开发,但从 实际开发的需要,必须先完成共通部分的开发, 然后再进行业务程序的编写。 共同部分包括各个业务需要调用的公共类和方法, 业务部分 包括W E B 层和E J B 层的各 种业务。我们将对其中E J B层部分程序进行介绍,说明这个系统在实现 过程中的特点。 4 . 1 E J B 编程规范说明 E J B是服务器端组件,封装由J a v a语言编写的业务逻辑,并且被设计在 E J B容器中运行。E J B是组件, 单独的E J B可以组合起来创建一个企业应用程 序。在使用供应商提供的部署工具的帮助下,在部署期间可以进一步对企业应 用程序进行定制和优化,来适应于一个特定的运行环境。 E J B技术定义了一组 可重用的 组件: E n t e r p r i s e B e a n s 。 你可以 利用这些组件, 象搭积木一样的 建立 你的分布式应用程序。当你把代码写好之后,这些组件就被组合到特定的文件 中去。 每个文件有一个或多个E n t e r p ri s e B e a n s , 在加上一些配置参数。 最后, 这些E n t e r p r i s e B e a n s 被配置到一个装了E J B容器的平台上。 客户能 够通过这些 B e a n s 的h o m e 接口,定位到某个b e a n s ,并产生这个b e a n s 的一个实例。 这样, 客户就能够调用B e a n s 的应用方法和远程接n , 调用过程如图砂4 1 . 客 户端代码, 例如S e r v le t 和A p p l e t 5 调用其一方法 图4 -1 E J B 对象把客户端所有请求传递给B e a n 四川为r 1 . F t 倾十学位论文 4t J 2 卜 t -: t $ 术的网 L 旅费报销系统的研发 F .J B体系结构通过把编程的 过程分为6 个不同的角 色而 使开发复杂的的应 用系统变的简单。 6 个不同的角色, 每个都有特定的任务。 6 个角色包括下 层的 服务, 应用程序的开 发, 配置和操作说明, 如图9 i 4 1 : E J B角官 1 : 图4 -2 E J 8 的6 个角色 E J B体系结构能够简化应用程序开发人员的工作。在E J B体系结构中,容 器和代理服务承担了很多在其他环境中又程序设计人员承担的工作。这样的代 理提供了很多原来需要程序设计人员编写代码的系统级的服务。 E n t e r p r is e b e a n s P r o v i d e r :B e a n s 提供者在应 用领域方面是 专家。 传统的 应用 程序开发者现在是E n t e r p r i s e b e a n s 的 提供者, 也 可能是 应用 程序的 装 配者。 这 样能使他们将主要精力放在应用问题或者应用逻辑 卜 面。虽然分布式的应用程 序还是比较复杂,但应用程序设计者的工作却变的简单了,因为所有复杂的工 作都交给了 E J B 服务器和容器提供者了。B e a n s提供者提供了业务 t a s k s , E n t e r p r i s e b e a n s 的业务方法,定义了b e a n s 的r o m o t e 和h o m e 接口, 还定义了 b e a n s 的配置描述器。因为容器管理着系统级的任务,所以, B e a n s 提供者便不 需要关心分布处理, 事务处理, 安全性能等从应用方面看来没什么关系的方面。 在这个程序的开发中,我们主要角色就是 b e a n s P r o v i d e r . E n t e r p r i s e B e a n s P r o v i d e : 提供如下东西给e j b j a r 文件: 1 , E n t e r p r i s e B e a n s的r e m o te接口 , 接口 说明一r C l i e n t 端能 调 用的函 数。 2 , E n t e r p r i s e B e a n s的 h o m 。接口, h o m 。接口使客户生成和定位一个 E n t e r p r is e B e a n s 的实例。 3 , E n t e r p r i s e类本身。 4 、用X M L 来定义配置 描述器, 配置一 个E n t e r p r i s e B e a n s 意味着 将一个 E n t e r p r i s e B e a n 安装到容器中 去。 在一个E J B容器中可以 又任意多 个E n t e r p r i s e 2 1 四川大学工 程硕 t 学位论文 基于J 2 E E 技术的网 卜 旅费报销东 统的研发 b e a n s .除了 安 装 和 执 行以 外, 容 器 也 提 供了 配 置E n t e r p r i s e b e a n s 的 工 其。 E J B S e rv e r P r o v i d o r 服务提供者是典型的提供分布式低层服务的代理。 E J B 服务提供者提供了一个分布式应用程序开发者需要的平台和设施也提供了分 布式程序的运行时环境。 E J B C o n t a i n e r P r o v i d o r 容器提供 者是分布式系统, 事务处理, 安全 方面的 专 家容器提供者提供了一个E J B的配置工具,和这些配置实例的运行时支持。 一 个 容 器 对一 个 或多 个E J B来说 , 是 一 个 运 行时 系 统。 它 将E n te r p r is e B e a n s 和E J B服务,包括事务服务, 安全服务,分布式网络管理等胶合在 起。容器 是既是一个定制的 代码和对特定的 E n t e r p r i s e b e a n s 产生详细代码的工具。 容器 也提供了一 个配置E n t e r p r i s e b e a n s 的工具和管理监视应用程序的 方法 A p p l i c a t i o n A s s e m b l e r 程 序组 装器: 这是一 个将定 制的E n t e r p r i s e b e a n s 和 其 它的 组件。 在 E n t e r p r i s e的 配置器下, 组装器在组装成一个应用程序的时 候, 只关 , L , b e a n s 的接口,包括r o m o t e 接口和h o m e 接口。而不关心这些接口是怎么实 现的 组装的结果就 是 一 个一 个的 应用程 序, 或者由 多 个E n t e r p r i s e b e a n s 组 合 成的一个比较复杂的应用程序。 D e p o l y e r :配置器为 特定的E n t e r p r i s e b e a n s 配置 特殊的操作环境。配置器 为了 适应应用程序, 将多个E n e r p r i s e b e a n s 组合起来, 通过修改E n t e r p r i s e b e a n s 的属性来达到配置相应的操作环境。例如,配置器通过设置配置描述符的相应 的属性来设置事务和安全方针。配置器的另一个任务是将应用程序与现有的 E n t e r p r i s e 管理软件结合起来。 S y s t e m A d m i n i s t r a t o r 系统管理者: 这是与配置应用有关的。 管理者配置 个 管理E n t e r p r i s e 计算和网络服务的低层, 包括E J B服务和容器。 管理员 监视着 应用服务器的运行状况,当应用服务器不正常运行是就采取相应的措施。典型 的 说, 管理员 使用E n t e r p r i s e 管 理工具来与 应用 程序打 交道, 通过由 容器提供 的h o o k s 来配置。 E n t e r p r is e b e a n s l s 1 : E J B 1 . 1 规范 有 两 种 类 型的E n te r p r i s e b e a n s : S e s s io n b e a n s和 e n t it y b e a n s。 S e s s i o n b e a n s是一种作为单个的。 l i e n t 执行的 对象。作为对远程的任务请 求的 相 应, 容 器 产生 一 个S e s s i o n b e a n , 的 实 例。 一 个S e s s io n b e a n s 有 一 个c li
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 西瓜消暑活动方案
- 和合致远考试题及答案
- 国家司考试题及答案
- 公寓客服考试题及答案
- 幼儿园教学教案设计:不玩化学品
- 甘肃专升本考试题及答案
- 产品功能迭代需求分析与评估工具
- 儿童乐理考试题及答案
- 供应商信息管理与评价标准体系
- 动画 识图考试题及答案
- GB 23466-2025听力防护装备的选择、使用和维护
- 人教PEP版(2024)四年级上册英语-Unit 3 Places we live in 单元整体教学设计(共6课时)
- 华为信息安全管理培训课件
- 贵阳市殡仪服务中心招聘考试真题2024
- 重庆市危险化学品企业变更管理实施指南(试行)解读2025.7.25
- 2025年全国保密教育线上培训考试试题库完整答案附带答案详解
- 全套教学课件《工程伦理学》
- 国防法规优秀课件
- 世界烟草控制框架公约解读
- GB/T 1631-2008离子交换树脂命名系统和基本规范
- 清洗地毯操作流程课件
评论
0/150
提交评论