已阅读5页,还剩61页未读, 继续免费阅读
(计算机应用技术专业论文)基于j2ee的就业管理信息系统平台研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
山东大学硕士学位论文 摘要 随着我国教育事业的蓬勃发展,各类大专院校规模不断扩大,毕业生数量不 断增加,这就对高校就业工作的高效性和规范化提出了更高的要求。如何提高高 校毕业生就业工作的信息化程度,使用人单位和学生方便实时的各取所需,进而 提高高校就业率和单位招聘效率,成为高校就业管理机构迫切需要解决的课题。 本文对就业管理的背景及意义进行了介绍,分析了当前就业管理的特点,并 对就业指导中心毕业生就业管理的实际需求进行了系统分析,设计并实现了就业 管理信息系统。系统采用当前流行的j 2 e e 技术作为系统的整体架构,并通过j 2 e e 四层架构与m v c 设计模式相结合,实现了表现逻辑与业务逻辑相分离,方便了 系统的开发与维护;采用开放源码的j b o s s 作为应用服务器,整合的t o m c a t 作为 w e b 服务器;页面表现主要由j s p 实现,完成用户与系统的交互;业务逻辑处理 主要由e j b 组件封装完成。 系统用户分为三种:学生、企业代表和管理员,用户可通过各自的访问入口 进入系统,完成权限范围内的功能操作。系统主要实现了就业指导管理、招聘管 理以及系统管理三个子系统,涵盖毕业生管理、单位管理、签约管理、数据统计 上报、招聘信息管理、就业信息统计、生源核对、权限管理、系统配置、系统状 态和日志管理等多个功能模块。 本文详细介绍了系统的开发与实现过程:从需求建模、详细设计、组件的开 发、数据的访问到系统的部署。系统实现了毕业生就业的综合管理,系统的应用 将为毕业生就业和用人单位招聘提供方便快捷的服务,提高就业指导工作效率。 关键词:w e b 技术:b s 体系结构;j 2 e e ;x m l 山东大学硕士学位论文 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fe d u c a t i o n ,h i g h e re d u c a t i o ne n r o l l m e n tc o n t i n u 嚣 t o e x p a n da n dt h ei n c r e a s i n gt h en u m b e ro fg r a d u a t e s ,t h em a n a g e m e n to f e m p l o y m e n ti n f o r m a t i o ni sr e q u i r e dm o r e h o wt om a k ee m e r p r i s e sa n dg r a d u a t e sg e t w h a tt h e yw a n ta n di n c r e a s et h ee m p l o y m e n tr a t eo fu n i v e r s i t yi sa nu r g e n tp r o b l e m n e e d e dt ob es o l v e db ye m p l o y m e n tm a n a g e m e n to r g a n i z a t i o n so fu n i v e r s i t i e s b a s e do nt h ea b o v ep u r p o s e ,t h i sp a p e rf i r s ti n t r o d u c e st h eb a c k g r o u n da n d m e a n i n go fe m p l o y m e n tm a n a g e m e n t , a n ds y s t e m a t i ca n a l y s i so fg r a d u a t e e m p l o y m e n tm a n a g e m e n t i na c c o r d a n c ew i t ht h ea c t u a l n e e d s ,d e s i g n e da n d i m p l e m e n t e de m p l o y m e n tm a n a g e m e n ti n f o r m a t i o ns y s t e m t h es y s t e mu s e st h e c u r r e n tp o p u l a rj 2 e et e c h n o l o g ya st h eo v e r a l ls y s t e ma r c h i t e c t u r e , f o u r - s t o r e y s t r u c t u r eo fj 2 e ea n dm v cd e s i g np a t t e m sc o m b i n a t i o nt oa c h i e v et h ep e r f o r m a n c e o fl o g i ca n db u s i n e s sl o g i cs e p a r a t i o n ,i tf a c i l i t a t e st h ed e v e l o p m e n ta n dm a i n t e n a n c e s y s t e m ;t h e i s s u eu s i n gj b o s sa sa p p l i c a t i o ns e r v e r , a n di n t e g r a t i o nt o m c a ta sa w e bs e r v e r v i e wl a y e rw 舔m a i n l yr e a l i z e db yj s p p a g e ,b u s i n e s sl o g i cc o m p o s e db y t h ee j bc o m p o n e n t u s e r so ft h es y s t e ma r ed i v i d e di n t ot h r e ec a t e g o r i e s :s t u d e n t s ,b u s i n e s s r e p r e s e n t a t i v e sa n da d m i n i s t r a t o r s ,u s e r sc a l la c c e s st h r o u g ht h e i re n t r a n c ei n t ot h e s y s t e mt oc o m p l e t et h ef u n c t i o no ft h el i m i t so fo p e r a t i o n s y s t e mi sm a i n l y i m p l e m e n t e dc a r e e rg u i d a n c em a n a g e m e n t ,r e c r u i t m e n tm a n a g e m e n t , a n ds y s t e m m a n a g e m e n t ,c o v e r i n gt h eg r a d u a t em a n a g e m e n t ,e n t e r p r i s em a n a g e m e n t , c o n 伽 m a n a g e m e n t ,s t a t i s t i c sr e p o r t i n ge m p l o y m e n ti n f o r m a t i o na n ds t a t i s t i c s ,g r a d u a t e c h e c k ,r i g h t sm a n a g e m e n t , s y s t e mc o n f i g u r a t i o n ,s y s t e ms t a t u s ,a n dl o gm a n a g e m e n t a n do t h e rf u n c t i o n a lb l o c k s t h i sp a p e rd e s c r i b e st h es y s t e md e v e l o p m e n ta n di m p l e m e n t a t i o n ,f r o md e m a n d m o d e l i n gd e t a i l e dd e s i g n ,c o m p o n e n td e v e l o p m e n t , d a t a a c c e s st ot h e s y s t e m d e p l o y m e n t a c h i e v e dag r a d u a t ee m p l o y m e n tm a n a g e m e n ts y s t e m , t h es y s t e mw i l l 2 山东大学硕士学位论文 e n a b l e s t u d e n t s ,e n t e r p r i s e s ,m a n a g e r sc a bf a c i l i t a t e t h eu s ew e bt o a c q u i r e e m p l o y m e n ti n f o r m a t i o no fg r a d u a t e s , i tr e f l e c tt h ef o c u so ft h ee m p l o y m e n tw o r k , w h i c hp r o v i d es t u d e n t sw i t he m p l o y m e n tg u i d a n c ea n ds e r v i c e s i tm a k e st h e m a n a g e r s ,s t u d e n t s , b u s i n e s s e sm o r ee a s i l ya n dq u i c k l yt om e e tt h e i ro w nn e e d s ,t o e n s u r ei n f o r m a t i o na c c u r a c ya n d t i m e l i n e s s ,g r e a t l yi m p r o v i n gt h ee f f i c i e n c y k e y w o r d s w e bt e c h n o l o g y :b sa r c h i t e c t u r e :j 2 e e :x m l 3 原创。l 生声明和关于论文使用授权的说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究所取得的成果。除文中已经注明引用的内容外,本论文不 包含任何其他个人或集体已经发表或撰写过的科研成果。对本文的研 究做出重要贡献的个人和集体,均已在文中以明确方式标明。本声明 的法律责任由本人承担。 论文作者签名磊垄宣垒 日期:丝望二! :少 关于学位论文使用授权的声明 本人完全了解山东大学有关保留、使用学位论文的规定,同意学 校保留或向国家有关部门或机构送交论文的复印件和电子版,允许论 文被查阅和借阅;本人授权山东大学可以将本学位论文的全部或部分 内容编入有关数据库进行检索,可以采用影印、缩印或其他复制手段 保存论文和汇编本学位论文。 ( 保密论文在解密后应遵守此规定) 论文作者签名蕴煎师签名日期:丝望:竺:y 山东大学硕士学位论文 1 1 课题的研究背景与目的 第1 章绪论 高等教育是培养和造就高层次人才的主要途径,而就业指导和管理是高等教 育管理的最后一个阶段,是一项十分重要的工作。随着我国高等教育体制改革的 不断深入,目前已经形成“双向选择,自主择业”的就业体制,并进一步向市场 化和自由择业的方向发展。在就业工作中,学校正在由单纯的管理者角色向提供 就业指导和相关服务的方向转变。与此同时,我国的教育事业蓬勃发展,升学率 普遍提高,各类大专院校规模不断扩大,毕业生数量不断增加,这就对高校就业 工作的高效性和规范化提出了更高的要求 1 1 。 本课题以我国高校毕业生就业制度的改革和发展为背景,结合高校就业管理 任务重、信息量大、时效性强、数据处理方式复杂、社会影响大的特点和济南大 学就业管理部门的实际需求,开发了一套完整的、基于高校实际情况的、易于操 作的就业管理信息系统方便学生获得单位招聘信息,同时也使更多的招聘单位 能够实时地发布招聘信息,准确地获得学生基本情况和求职信息,从而使单位和 学生各取所需,提高了高校的就业率和单位招聘效率,同时也满足了各级毕业生 就业工作主管部门、高校和用人单位在计划管理、毕业生资源与需求信息方面的 需要。 1 2 论文的主要工作与创新 1 2 1 主要工作 本文的主要内容是讨论就业管理信息系统的设计与实现。在本论文进行过程 中,本人搜集并阅读了大量当今高校毕业生就业相关文献,并与近年发展趋势结 合,在了解、熟悉并掌握就业信息业务和j 2 e e 2 相关技术的基础上,设计并实 现了就业管理信息系统,本系统主要包括下面三部分。 1 就业指导管理 山东大学硕士学位论文 就业指导管理功能中包括毕业生管理、单位管理、签约管理、数据统计以及 数据上报五个功能模块。主要提供毕业生信息导入及维护、用人单位信息维护、 学生签约信息维护以及数据统计上报功能。 2 招聘管理 招聘管理中包括招聘信息公布、就业信息统计、生源核对等功能模块。招聘 信息公布为就业指导中心工作人员提供需求信息公布和专场招聘会信息公布功 能;就业信息统计为学校领导以及就业指导中心领导提供查询各项统计信息的功 能;生源核对使各个院校管理员能够登陆网站,对各自学院毕业生信息进行修改 核对。 3 网上招聘。网上招聘功能分成两大功能结构:毕业生部分和用人单位部 分。毕业生部分为毕业生提供了简历管理、用人单位信息检索、求职管理及个人 设置;用人单位部分为用人单位提供了企业注册、企业信息维护、需求信息维护、 毕业生信息查询等功能。 4 系统管理。系统管理主要包括权限管理、系统配置、系统状态、日志管 理等四个功能模块。 1 2 2 论文的特色与创新 本文重点研究了基于j 2 e e 的就业管理信息系统,面向高等院校的就业现状 和发展趋势,进行了需求分析和模块的设计,采用j 2 e e 技术作为系统架构进行 开发。现在系统的主要功能部分都已经开发完成,目前已投入使用,运行良好。 归纳起来,本系统的特色主要有以下几点: 1 采用m v c 模式p 。5 1 分层进行开发,使逻辑表示和业务逻辑相分离,便于 软件的维护,并且具有较好的升级和后续开发的空间,可根据用户的需求定制新 的模块和栏目。 2 本系统实现了用户注册成功自动通过m s n 留言给系统管理员,从而使 系统管理员能够及时的收到注册通知、快速的审核企业资格,进而保证企业招聘 信息及时发布到就业系统中。 3 根据学生注册信息自动生成简历,使学生能够快速创建求职简历,并可 以将简历导出为中文办公软件文档格式标准u o f i s 墙域者o i 畸c ew o r d 格式的文 2 山东大学硕士学位论文 档,方便了企业代表查看筛选。 4 实现了通用的基于配置文件的灵活的数据迁移模块,该模块可以导入系 统业务数据。当系统增加新的导入时只需要修改配置文件,增加新的处理方法, 遵循设计模式中的开放封闭原则。其中导入数据支持e x c e l 和u o f 电子表格。 5 采用数据库连接池技术,使得系统可同时容纳的客户数量大大增加,适 用于高校环境的要求。 6 对国产文档格式u o f t 8 1 进行支持,推广国产办公文档的应用。 1 3 论文的组织结构 第一章,绪论,主要描述就业管理系统的研究背景与目的,本文的特色和创 新。 第二章,重点研究了j 2 e e 的体系结构、m v c 设计模式、u m l 建模 9 1 1 1 明方 法以及业务数据的存储方法。 第三章,详细描述了就业管理信息系统的需求分析,通过对济南大学就业指 导中心就业管理现状的详细调查以及对就业指导中心工作人员的多次交流,给出 了具体的需求,采用面向对象的思想对系统的业务流程进行了分析,运用u m l 建模方法给出了系统的功能模型,并提出了系统的设计目标。 第四章,详细介绍了就业管理系统的系统设计,主要包括系统的功能设计、 体系结构设计、数据库设计、数据一致性及安全设计等。 第五章,具体介绍了就业管理系统的开发与实现,主要包括各层应用组件的 开发、数据库连接池的实现以及系统的部署等。同时重点描述了系统重点细节的 实现。 第六章,对整个课题的研究作了总结与展望,对论文的工作做了回顾与总结, 给出了系统的不足,并对课题今后需要进一步研究的工作做了展望。 山东大学硕士学位论文 第2 章相关技术研究 2 。1j 2 e e 体系结构及e j b 组件技术 2 1 1j 2 e e 概述 j 2 e e 是j a v a 2 平台的企业级版本( j a v a 2p l a t f o r me n m r p f i s ee d i t i o n ) ,是一种 利用j a v a 2 平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系 结构。j 2 e e 技术的基础就是核心j a v a 平台或j a v a 2 平台的标准版,j 2 e e 不仅保 留了原来标准版中的许多优点,同时还提供了对e j b t n l ( e n t e 甲f i s ej a v a b e a n ) 、 s e r v l e t 、j s p 以及x m l 技术的全面支持。j 2 e e 体系结构的目的就是通过提供中 间层集成框架大幅缩短企业级应用投放市场的时间,即能降低费用,又具有高可 用性、高可靠性以及可扩展性等优点。通过提供统一的开发平台,j 2 e e 降低了 开发w e b 应用的费用和复杂性,同时提供对现有应用程序集成的强有力支持, 完全支持e j b ,能很好地支持打包和部署应用,增强了安全机制,提高了软件的 性能。 目前,应用比较广泛的技术还有m i c r o s o f i n e t ,它只能运行在w m d o w s 平台上,而j 2 e e 具有跨平台的特性,它可以在任何有j v m 的平台上运行,只要 有兼容的服务即可;n e t 中有些技术虽然是公开的,但是它的核心技术还是由 微软垄断的,微软是n e t 完整开发工具的和平台的唯一提供厂商,而j 2 e e 的一 切标准都是公开的,许多厂商都提供兼容的产品和开发工具。 综合以上的比较和分析,鉴于j 2 e e 架构的开放性、安全性、稳定性和跨平 台特性,本系统的开发采用了j 2 e e 体系架构。 2 1 2j 2 e e 架构 j 2 e e 使用多层的分布式应用模型,应用逻辑按功能划分为组件。组件是具 有独立功能的软件单元,它们通过相关的类和文件组装成j 2 e e 应用程序,并与 其他组件交互。其中应用客户端程序和a p p l e t s 是客户层组件,j a v as e r v l e t 和j a v a s e r v e rp a g e s ( j s p ) 是w e b 层组件,e n t e 甲f i s ej a v a b e a n s ( e j b ) 是业务层组件。各个 4 山东大学硕士学位论文 组件根据他们所在的层分布在不同的机器上。j 2 e e 体系结构和组件技术,如下 图所示: 客户靖表示层业务逻辑层企业信息集成层 图2 1j 2 e e 体系结构和组件技术 如图所示,整个应用系统由客户端( c l i e n t ) 、表示层( p r e s e n t a t i o nl o g i c ) 、业 务逻辑层( b u s i n e s sl o g i c ) 和企业信息集成层( 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 ) 组成 【1 刁。下面分别简述。 1 客户端:客户应用端部分。它可以是基于w e b 应用的,也可以是j a v a 应 用程序。在w 曲应用中,典型的客户端就是浏览器。 2 表示层:在典型的w e b 应用中,表示层主要采用j s p 或者s e r v l e t 组件。 它主要负责完成与用户交互的功能。 3 业务逻辑层:该层构成了w e b 应用的业务逻辑规则,是整个应用的核心 部分。它将业务划分为一个个独立的逻辑单元e j b 。e j b 根据客户请求,访问数 据库,进行相应的逻辑计算。 4 企业信息集成层:。主要是资源层和集成层。它运行企业信息系统软件, 如企业资源计划( e r p ) 、数据库系统b ) 及遗留信息系统( l e g a c ys y s t e m s ) 等。中 间层( 即表示层和业务逻辑层) 负责建立和后台支持系统的连接,提供相应的数据 服务。 2 1 3d 2 e e 组件技术 组件( c o m p o n e n t ) 是一个可重用软件构件,是预先构建的封装的代码模块,能 够与其他组件或是硬编码一道很快的生成制定的应用程序。j 2 e e 使用多层的分 布式应用模型,应用逻辑按功能划分为组件,各个应用组件根据他们所在的层分 山东大学硕士学位论文 布在不同的服务器上。j 2 e e 共有3 类组件,分别是客户端组件、w e b 层组件和 业务层组件。 1 客户端组件 在j 2 e e 规范中指出,客户层有两种组件,它们是a p p l e t 客户端和应用程序 客户端。a p p l e t 是一种w e b 客户端使用的软件,它在支持j a v a 浏览器的a p p i e r 容器内运行,使用浏览器作为用户界面。应用程序客户端是一个j a v a 程序,它 在应用程序客户端容器内运行,可以访问多层架构中的各层。 2 w 曲组件 j 2 e ew e b 组件主要包括j s p 页面和s e r v l e t 。它们都能与服务器端的业务逻 辑进行交互来管理w e b 层。w e b 组件在j 2 e ew e b 容器中运行,w e b 容器支持多 层结构的w e b 层,通过h t t p 协议对w e b 请求进行响应,并将处理结果回复给 客户。 s e r v l e t 是用来扩展和加强w e b 服务器的网络组件,它基于请求响应 ( r e q u e s t r e s p o n s e ) 机制,具有平台无关性。s e r v l e t 可以访问所有j a v a a p i ,包括 通过j d b ca p i 访问企业数据库,而且也可以访问具体的h t t p 调用库。 j s p 技术提供了一个简单、快捷的方法来创建动态网页内容,使得能够快速 地进行与平台无关的基于w e b 的应用程序的开发。j s p 和s e r v l e t 相似,其脚本 编译为s e r v l e t ,j s p 引擎将它和它所在的h t m l 文件一起合成s e r v l e t 的代码, 然后执行与s e r v l e t 相同的过程,先编译成c l a s s 文件,由支持j a v a 虚拟机的服务 器来进行处理,然后生成w e b 页面返回给浏览器。 3 业务组件 业务组件就是e j b ( e n t e r p r i s ej a v a b e 觚s ) 组件,它主要用来实现业务逻辑, 解决特定业务领域中的功能需求。 2 1 4e d b 组件 如上所述,e j b ( e n t e r p r i s ej a v a b e a l l ) 组件技术是j 2 e e 企业开发平台最核心 的部分。s u n 公司对e j b 的定义是:e j b 是用于开发和部署多层结构的、分布 式的、面向对象的j a v a 应用系统的跨平台的构件体系结构悼1 6 1 。e j b 组件模型 的运行原理【l 刀如下图: 6 山东大学硕士学位论文 图2 2e j b 组件模型的运行原理 基本的e j b 架构由e j b 服务器、e j b 容器、e j b 组件、y n d i 服务、r e m o t e 接 口、h o m e 接口、e j b 对象组成。烈d i 提供j a v a 的名字和目录服务,用于管理 应用中的核心组件和对象。e j b 必须生存在e j b 容器中,而e j b 容器又存在于 e m 服务器中。客户端通过容器调用e j b 。e j b 服务器提供j d b c 驱动实现与数 据库的连接。 e j b 组件模型的工作原理【1 8 1 可简述为:w e bs e r v e r 把客户端的请求分发到应 用系统层,首要的目标是找到特定服务的e j b 组件,w e bs e r v e r 透过e j bs e r v e r 层,与e y bc o n t a i n e r 通信,查找并且定位h o m e 对象,h o m e 对象是e j b 对象 与客户端应用程序之间通信的接口,当找到特定的h o m e 对象时,我们就可以利 用这个对象,创建一个r e m o t e 对象,这个r e m o t e 对象封装了e j b 对象所有的 功能,在应用程序中调用r e m o t e 对象的方法,实际上就是调用e j b 对象的方法。 e j b 2 0 规范n 9 】中定义的e j b 有三种类型:实体b e a n ( e n t i t yb e a n ) 、会话b e a n ( s e s s i o nb e a n ) 和消息驱动b e a n 。分别做如下简述。 1 实体b e a n 用来表示持久性的数据,并且提供相应的方法来访问控制这些 数据。根据实现方式的不同,实体b e a n 可以分为容器管理的持久性( c m p ) 和b e a n 管理的持久性( a m p ) 两种。c m p 由容器来完成b e a n s 的持久性管理和实例的维 护。b m p 则由b e a n s 本身来管理持久性,所以具有更大的灵活性和容器无关性。 但是c m p 的效率比b m p 要高,所以在构建本系统时主要采用c m p 。 2 会话b e a n 由客户端创建,多数情况下存在于单个客户和服务器会话期间。 7 山东大学硕士学位论文 它的最主要功能是实现业务逻辑、业务规则和工作流。会话b e a n 也有两种:无 状态的会话b e a n 和有状态的会话b e a n 。无状态的会话b e a n 可以被多个客户端 访问,不存储任何一个客户端的会话信息:有状态的会话b e a n 则与唯一的一个 客户端维持会话信息。 3 消息驱动b e a n ,它是能够接收j m s 消息的特殊e j b 组件,由于本文没 有采用该组件技术,不再赘述。 简言之,e j b 规范提供了一种开发和部署服务器端组件的方法。每个e j b 是 按功能逻辑划分的,开发时不必关心系统底层细节问题,只关注具体的事务分析。 e j b 开发完毕后,按规划部署在e j b 容器中,完成相应的事务功能。e j b 支持分 布式计算,真正体现了企业级的应用。 2 1 5j 2 e e 核心a p i j 2 e e 平台由一整套服务( s e r v i c e s ) 、应用程序接口( a p i s ) 和协议构成,它对开 发基于w r e b 的多层应用提供了功能支持,以下是j 2 e e 中的9 种主要a p i 的简单 描述【2 0 】: 1 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 ) j d b ca p i 为访问不同的数据库提供 一种统一途径,利用它可以在j 2 e e 平台和数据库之间建立连接。j d b c 对数据 库的访问具有平台无关性。 2 j n d i ( 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 ) 2 1 】【2 2 】:j n d ia p i 被用于执行名 字和目录服务。它提供了一致的模型来存取和操作企业级的资源,如d n s 、 l d a p 、本地文件系统或应用服务器中的对象。 3 e j b ( e n t e r p r i s ej a v a b e a n ) :提供了一个框架来开发和实施分布式商务逻辑, 并且显著地简化了具有可伸缩胜和高度复杂的企业级应用的开发。e j b 规范定义 了e j b 组件在何时如何与它们的容器进行交互作用。容器负责提供公用的服务, 例如目录服务、事务管理、安全性、资源缓冲池以及容错性。但这里值得注意的 是,e j b 并不是实现j 2 e e 的唯一途径。正是由于j 2 e e 的开放性,使得有的厂 商能够以一种和e j b 平行的方式来达到同样的目的。e j b 是j 2 e e 体系结构的骨 干部分。 4 r 2 d i ( r e m o t em e t h o di n v o k e ) t z 3 2 4 l :r n f l 协议调用远程对象方法。它使用 山东大学硕士学位论文 了序列化方式在客户端和服务器端传递数据。r m i 是一种被e j b 使用的更底层 的协议。 5 j a v ai d l c o r b a t 2 5 】:在j a v ai d l 的支持下,开发人员可以将j a v a 和 c o r b a 集成在一起。通过它,j a v a 可以将新的应用和旧的系统集成在一起。 6 j s p ( j a v as e r v e rp a g e s ) : j s p 页面由h t m l 代码和嵌入其中的j a v a 代码 组成。服务器在j s p 页面被客户端请求访问以后,对这些j a v a 代码进行处理, 然后将生成的页面返回给客户端的浏览器。 7 j a v as e r v l e t :s e r v l e t 是一种小型的j a v a 程序,它扩展了w e b 服务器的功 能。s 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 全部采用j a v a 语言开发。 8 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 ) :x m l 是一种可以用来定义其它标记 语言的语言。它被用来在不同的商务过程中共享数据。x m l 的发展和j a v a 是相 互独立的,但是,它和j a v a 具有的相同目标,即平台独立性。通过将j a v a 和x m l 的组合,可以得到一个完美的具有平台独立性的解决方案。 9 j m s ( j a v a m e s s a g es e r v i c e ) t 2 6 l :j m s 是用于和面向消息的中间件相互通 信的应用程序接口。由于本文没有涉及,这里不展开说明。 2 2m v o 模式 2 2 1w c 模式概述 设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经 验的总结,它是在对某种环境中反复出现的问题以及解决该问题的方案的描述。 使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 设计模式使代码编制真正工程化,它是现代软件工程的基石。j 2 e e 平台拥有多 种技术,其规范从高层抽象了基础技术。但要将这些技术合理而有效的使用就需 要长期的开发经验和对各项技术的深入理解。j 2 e e 模式就是j 2 e e 平台中开发的 情境和经验的总结,合理运用j 2 e e 模式可以有效地解决在j 2 e e 平台开发中遇 到的常见设计问题,优化程序的性能。 模型视图控制器( m o d e l - v i e w - c o n t r o l l e r ,简称m v c ) 是一种目前广泛流行 9 山东大学硕士学位论文 的软件开发设计模式,随着网络应用的快速增力盯,使用m v c 设计模式设计开发 w e b 应用软件的优势也慢慢地呈现出来,大多数的w e b 层应用框架都可以使用 不同变化类型的m v c 设计模式。它能为理解、分析应用模型提供最基本的分析 方法,并为构造软件商品提供清晰的结构框架。 在m v c 设计模式中,模型代表应用的业务逻辑,视图代表应用的表示,控 制器提供应用的处理过程控制。通过这个设计模型,可以把应用逻辑、处理过程 和显示逻辑分成不同的组件实现,这些组件可以进行交互和重用。 m v c 设计模式具有三个层面:模型、视图和控制器 2 7 1 ,每个层面有其各自 的功能作用。 1 模型 模型层负责表达和访问业务数据,执行业务逻辑和操作。也就是说,这一层 就是现实生活中功能的软件模拟:在模型层变化的时候,它将通知视图层,并提 供后者访问自身状态的能力,同时控制层也可以访问其功能函数以完成相关的任 务。 2 视图 视图层负责显示模型层的内容。它从模型层取得数据并指定这些数据如何被 显示出来。在模型层变化的时候,它将自动更新。另外视图层也会将用户的输入 传送给控制器。 3 控制器 控制层负责定义应用程序的行为。它接收用户的输入并调用模型和视图去完 成用户的需求。也就是说,一方面它可以分派用户的请求并选择恰当的视图以用 于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。 使用m v c 设计模式处理一个业务逻辑时,首先控制器接收用户的请求,并 决定应该调用哪个模型来进行处理,然后模型使用业务逻辑组件来处理用户的请 求并返回数据,最后控制器选择相应的视图显示模型返回的数据,并通过表示层 呈现给用户。 在模型层、视图层和控制层之间划分责任可以减少代码的重复度,并使应用 程序维护起来更简单。同时由于数据和业务逻辑的分开,在新的数据源加入和数 据显示变化的时候,数据处理也会变得更简单。m v c 设计模式主要适用于那些 1 0 山东大学硕士学位论文 多用户、可扩展、可维护或具有很高交互性的系统,它可以很好地表达用户的交 互和系统模式,并且很方便地用多个视图显示多套数据,使系统能够方便地支持 其它新的客户端类型。由于分离了模式中的控制和数据表现,可以分清开发者的 责任,缩短开发工期,提高软件质量,从而加速商品推向市场。 本系统中具体应用m v c 架构时采用- 了s t r u t s 框架【2 引,下面就对其进行必要的 介绍,后面章节中会有相应的实例介绍。 2 2 2s t r u t s 结构 框架是软件开发过程中经过适度抽象的可重用、可扩充的基础性架构,它将 应用中的一些通用功能集成在一起,通过对这些通用功能的定制和扩充来支持应 用的快速开发。框架是组对象的集合,它的设计与代码都可以被重用。s t r u t s 是a p a c h es o f t w a r ef o u n d a t i o n 的一个开放源代码项目,它提供了一个构建基于 m v c 模式的w e b 应用程序的框架。s t r u t s 旨在通过对m v 设计模式的应用给j 2 e e w e b 层的开发提供一个易维护、易扩展的基础性架构,来简化应用的开发。 使用s t r u t s 可以方便的将j a v a 氏码完全从j s p 中分离出来,使得j 2 e e 的n 层结 构真正落实到实处。s t r u m 框架的核心部分是一个基于各种标准技术( 如j a v a s e r v l e t s 、j a v a b e a n s 、x m l 等) 的控制层。s t r u t s 使用自己提供的控制器组件,对 于模型和视图,则是使用其它技术来实现的:在模型层,s t r u t s 使用j 2 e e 组件中 的业务组件e j b 等;在视图层,s t r u t s 使用j 2 e e 的w e b 层组件j s p 、j s f ( j a v a s e r v e r f a c e s ) 、x s l t 等。另外,s t r u t s 还使用了对实现事件控制流很重要的两个文件: w e b x m l 和s t r u t s c o n f i g x m l 。前者用于初始化w e b 应用程序的资源,如程序用到的 s e r v l e t s 、标记库t a g l i b 等;后者用于初始化s m a t s f l 身的资源,如用于收集用户输 入的a c t i o n f o r m s 信息、选择输出页面相应的的a c t i o n f o r w a r d s 、将用户请求映射 到服务端操作a c t i o n s 的a c t i o n m a p p i n g s 。 s t r u t s 的底层机制是m v c ,其具有m v c 模式的所有特性和优点,并且还提供 了很多组件来实现m v c 基本特征,简化了基于m v c 的应用程序的开发,缩短了 开发时间,提高了开发效率;配置文件的使用,使得应用程序的设计一目了然, 便于交流和维护。 山东大学硕士学位论文 2 2 38 v 0 、s t r u t s 、e j b 配合使用 s t r u t s 框架是可重用的w e b 层基础性架构,它对c o n t r o l l e r f f 茸l v i e 、祝件的功能 划分使得由其所开发的w e b 层极易维护。在j 2 e e c 应用中利用s t r u t s 框 架可以带来如下一些好处: 1 s t r u t s 框架集成了w e b 层开发所需的多种通用功能,可以通过定制和扩 充来实现具体的应用。 2 s t r u t s 框架的c o n t r o l l e r 组件可以有效地将w e b 层中的请求处理、流程 控制和页面的表示相分离,提高了w e b 层的可维护性与j s p 页面的可读性。 3 s t r u t s 框架是可重用的、源代码开放的基础性架构,利用它可以显著的 缩短应用的开发周期、降低开发的成本和投资,而且并不存在任何的侵权问题。 4 s t r u t s 框架的控制器组件综合利用了多种j 2 e e 的设计模式,它的目标 是要全面减轻构建w e b 应用的负担,提供可复用的框架。目前在国内外许多的大 型w e b 应用中得到广泛应用。 e j b 是j 2 e e 平台的商业组件模型,它通过简单的定制和部署就可以从容 器中获得良好的安全、事务、数据持续性等功能支持,而无须进行繁琐又难以把 握的底层编码,这使得它特别适用于在业务层中封装应用的业务逻辑和数据1 2 9 1 。 作为当今主流的服务器端组件体系结构,它具有以下三大优点: 1 它能够快速的开发出复杂的应用。在e j b 容器的支持下,应用开发人 员只需把精力集中在业务逻辑的开发上,系统所需的诸如安全、事务、数据持续 性等复杂的中间件服务则由容器去提供,降低了开发的难度。 2 它得到了业界的广泛支持和认可。e j b 是s u n 公司联合m m 、b e a 等 众多中间件厂商巨头共同制定的,其目标是要成为企业w e b 应用的标准组件体 系结构,尽管问世还不到六年,但它已经在服务器端w e b 应用中确定了自己明 显的优势地位。 3 它具有良好的可移植性和互操作性。e j b 是j a v a 技术在服务器端的应 用,具有j a v a 语言固有的平台无关性,而且e j b 规范也已经得到了广泛的支 持和认可,该规范对e j b 的“容器一组件模型做出了严格的定义和说明,使 得e j b 组件可以在一个统一的平台和a p i 下开发、并可平滑的移植到不同的 e j b 服务器平台之上。 1 2 山东大学硕士学位论文 集成s t r u t s 框架和e j b 组件,可以综合利用两者的优势,从而高效、快速 的构建出一个可维护、易扩展的j 2 e em v c 应用。 而利用e j b 组件实现业务层,基于s t r u t s 框架设计w e b 层,然后再将两 者集成在一起,综合利用两者的优势,从而高效、快速的构建出一个可维护、易 扩展的j 2 e em v c 应用。本系统正是基于这样一种设计理念而实现的。 2 3u m l 建模 2 3 1 统一建模语言u m l 在开发大型系统的过程中,其业务流程处理是一个复杂的过程。为了方便各 开发小组成员之间的相互沟通以及开发人员进行独立的思考和分析,必须为开发 小组选择一个有效的建模标准,从而减少系统的开发周期和维护时间,提高开发 的效率。统一建模u m l c u n i f i e dm o d e l i n gl a n g u a g e ) 正是一个这样的建模标准, 是目前使用较为广泛的可视化建模的工业标准。 u m l 统一并发展了b r o o c h 、r u m b a u g h 和j a c o b s o n 表示方法,被o m g ( o b j e c t m a n a g e m e n tg r o u p ) 采纳为对象建模的标准描述语言,并保持模型间的无缝连接, 拓宽研制开发软件系统的适用范围1 3 0 1 。 眦是由图和元模型组成的。图是u m l 的语法,而元模型则给出图的意 思,是u m l 的语义。u m l 的语义定义在四个抽象级建模概念框架中体现,这 四个框架分别是: 1 元元模型层,代表要定义的所有事务。 2 元模型层,它是组成f f m l 的基本元素。 3 模型层,也叫类模型,它组成了u m l 的模型,这层中的每个概念都是 元模型层中的概念的一个实例。 4 用户模型层,也叫对象模型或实例模型,所有元素都是u m l 模型的例 子。 使用u m l 作可视化模型主要是为了了解系统的重要细节,以便项目的需求 可以清晰地表达、开发出解决方案体系架构、并使一个选择的实现可以清晰地标 识和构造。为达到这个目的,需要丰富的符号来表达模型化的软件系统。 山东大学硕士学位论文 u m l 不但为基本的构造块提供了符号表示,它还提供了方法来表达基本构 造块之间的复杂关系。这些关系都以u m l 框图的形式表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年内蒙古化工职业学院单招职业适应性考试必刷测试卷及答案解析(名师系列)
- 2026年浙江邮电职业技术学院单招职业技能考试必刷测试卷及答案解析(夺冠系列)
- 2026年云南省临沧地区单招职业适应性测试必刷测试卷附答案解析
- 2026年宣城职业技术学院单招职业适应性考试题库及答案解析(夺冠系列)
- 2026年扬州市职业大学单招职业适应性测试题库及答案解析(名师系列)
- 房屋撤出协议书模板
- 房屋框架保护协议书
- 房屋竣工验收协议书
- 房屋翻修承包协议书
- 房屋认可协议书范本
- CACA小细胞肺癌诊治指南(2025版)解读
- 新能源管理政策解读
- 脑出血治疗与护理课件
- 2023年湖北武汉长江新区阳逻街道招聘社区干事笔试真题
- 货物类投标方案(技术标)
- 中国证监会证券市场交易结算资金监控系统证券公司接口规范
- 国元农业保险股份有限公司招聘笔试题库2024
- DB13-T 5810-2023 农田地膜残留监测技术规程
- 课内文言文知识点梳理(原文+注释+翻译) 统编版语文九年级下册
- DL∕T 1802-2018 水电厂自动发电控制及自动电压控制技术规范
- 配方管理制度(2篇)
评论
0/150
提交评论