IT项目管理系统的设计与实现 - 研究生论文 - 图文

更新时间:2024-03-03 04:25:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

摘要

IT项目管理系统的设计与实现

摘 要

随着信息需求的不断增长,IT项目的规模越来越庞大,IT项目的功能越来越复杂,信息化的风险也越来越高,金融机构对IT的依赖也越来越重……传统的信息交流方式早已不能满足企业对传递和处理大量信息的需要,信息化的发展过程中已经越来越凸显项目管理在项目实施中的重要性。因此,一套融合国际先进理念、契合企业管理办法的项目管理系统便被提上了企业的信息化建设日程。

本文描述了基于B/S架构的IT项目管理系统的设计与实现的过程,系统的开发采用了业内成熟稳定的J2EE SSH技术架构,设计并实现了企业内部项目的项目立项、人员配备、项目周报、会议纪要、问题管理、项目评审、需求变更、项目调整、项目结项等IT项目建设中的核心管理内容。该项目在开发过程中也严格依据项目管理的要求,从可行性分析到项目需求、设计、编码、测试,历经半年时间,在三名工程师的努力付出下,最终已在企业内部正式投入使用,系统的投产,大幅提升了企业管理层对项目协调的能力,大幅加强了项目经理日常管理的力度,大幅提升了企业项目管理水平的综合实力。该项目的投产,为项目实施的进度管理、质量保障、成本控制提供了有效的信息化的支撑平台。

本次论文重点以项目成本管理为例,通过项目立项及项目周报模块的实现,详细介绍了挣值管理理论在实践中的指导作用。通过项目经理提交项目周报,部门经理对周报实施审批后,系统将自动实现对项目成本偏差及项目进度偏差等挣值管理的相关信息进行实时的采集,该信息为企业领导层掌握项目实施状况提供了成本管理的数据模型,为未来项目管理系统向商业智能分析发展提供了有效的数据支持。

论文最后也讨论了本项目管理系统有待完善的环节和进一步研究的方向,为后续系统的升级改善提供了理论依据。

关键词:IT项目管理,信息化,J2EE,B/S

ABSTRACT

ABSTRACT

With the increasing demand for information domain, IT project scale size have become more and more bigger, and the project functions are more complicated to before there are many risks because many finance system rely on it heavily. Traditional information exchange method could not meet the enterprise demand to deliver and handle the large amount of information. The importance of Project management during project implementation phase is very prominent in the informatization progress. Hence a project management system which has integrated with international ideas and accorded with enterprise management have been put forward in enterprise informatization construction schedule.

This paper describes the process of design and implementation of IT project management system based on B/S infrastructure. System development have adopted stable J2EE SSH technology frame in the field. Design and achieve the core management contents which related to enterprise internal project establishment, project manpower deployment, project weekly report, meeting minutes, issue management, project approval, demand change, project adjustment and project closing etc during the IT project construction phase. This project will strictly obey with the project management requirement during the design process, starting from feasibility analysis to project demand, design, coding, testing, with the three engineers’ great efforts through half year, this project have been formally put into use in enterprise finally. This system has greatly promoted the project coordination ability for enterprise executives, greatly strengthen the daily management power for project manager, greatly promoted the comprehensive capability for enterprise project management since the system put on line. The system on-line has provided effective informatization supporting platform for progress management, quality ensurance, cost control of project implementation.

This paper have taken project cost management as an emphasized example, describing guideline function of earned value management theory during carry-out phase in details by project establishment and project weekly report model implementation. By the way of project manager to submit the project weekly report,

ABSTRACT

department manager approve the weekly report, the system will automatically collect the earned value information such as project cost gap and project progress gap from time to time, this information have provided cost management data model for enterprise executives to master the project implementation status, as well as to provide effective data support for future project management system to develop into commerce capacity analysis.

This paper have discussed the improvement part and further research direction for project management system in the end, it has provide theory basis for system improvement in the following.

Keywords: Project Management, Information Technology, J2EE, B/S

III

目录

目录

ABSTRACT ............................................................................................................................................... II 第一章 1.1 1.2

绪 论 ......................................................................................................................................... 1 项目背景 ................................................................................................................................... 1 选题依据 ................................................................................................................................... 2

1.2.1 项目管理的发展历史 ............................................................................................................. 3 1.2.2项目管理的发展趋势 .............................................................................................................. 3 1.2.3 IT项目管理系统国内外行业分析 ........................................................................................ 3 1.2.4 新型IT项目管理系统的重要性 ........................................................................................... 4

1.3 1.4 1.5 1.6 第二章 2.1 2.2

本课题解决的关键问题 ........................................................................................................... 4 本文的主要内容与创新点 ....................................................................................................... 5 本课题的理论意义和实际价值 ............................................................................................... 5 文章的结构安排 ....................................................................................................................... 6 基础理论及相关开发技术 ....................................................................................................... 7 PMBOK项目管理体系介绍 ........................................................................................................ 7 相关技术说明 ........................................................................................................................... 8

2.2.1 Java技术架构........................................................................................................................ 8 2.2.2 MVC设计模式.......................................................................................................................... 9 2.2.3 Hibernate应用框架 ............................................................................................................ 10 2.2.4 Struts2框架技术简介 ........................................................................................................ 12 2.2.5 Spring框架技术简介 .......................................................................................................... 13

2.3 2.4 第三章 3.1 3.2

开发平台 ................................................................................................................................. 14 本章小结 ................................................................................................................................. 16 系统分析 ................................................................................................................................. 17 系统整体规划 ......................................................................................................................... 17 主要功能模块分析 ................................................................................................................. 20

3.2.1 项目立项 .............................................................................................................................. 20

目录

3.2.2 项目周报 .............................................................................................................................. 21

3.3

本章小结 ................................................................................................................................. 22

第四章 系统的概要设计 .......................................................................................................................... 23 4.1 4.2

整体方案 ................................................................................................................................. 23 系统架构相关技术及要求 ..................................................................................................... 24

4.2.1 内存缓存机制....................................................................................................................... 24 4.2.2 JSP统一页面........................................................................................................................ 25

4.3 4.4

运行环境 ................................................................................................................................. 26 基本设计概念和处理流程 ..................................................................................................... 27

4.4.1 项目立项管理....................................................................................................................... 28 4.4.2 项目周报管理....................................................................................................................... 30 4.4.3 项目成本管理(挣值管理) ............................................................................................... 32

4.5

系统数据结构设计 ................................................................................................................. 35

4.5.1 数据库设计 .......................................................................................................................... 35 4.5.2 数据库设计表清单 ............................................................................................................... 38 4.5.3 核心数据库设计表结构 ....................................................................................................... 39

本章小结 ............................................................................................................................................... 41 第五章 系统实现 ...................................................................................................................................... 42 5.1 5.2 5.3

系统登录 ................................................................................................................................. 42 总体功能 ................................................................................................................................. 43 基于企业开发平台的实现方法 ............................................................................................. 43

5.3.1 配置模块相关参数 ............................................................................................................... 43 5.3.2 Hibernate编码实现 ............................................................................................................ 44 5.3.3 Struts编码实现 .................................................................................................................. 46 5.3.4 Spring编码实现 .................................................................................................................. 50

5.4

项目周报功能的实现(挣值成本管理) ............................................................................. 51

5.4.1 项目立项模块技术实现 ....................................................................................................... 51 5.4.2 项目周报模块技术实现 ....................................................................................................... 53 5.4.3 项目挣值管理实现方法 ....................................................................................................... 56

5.5

本章小结 ................................................................................................................................. 65

V

目录

第六章 系统测试 ...................................................................................................................................... 66 6.1 6.2

测试方法论 ............................................................................................................................. 66 测试执行情况 ......................................................................................................................... 68

6.2.1 功能测试 .............................................................................................................................. 68 6.2.2 文档验收 .............................................................................................................................. 70

6.3 6.4 6.5

测试结果摘要 ......................................................................................................................... 71 评价 ......................................................................................................................................... 72 本章小结 ................................................................................................................................. 72

第七章 结论与进一步研究展望 .............................................................................................................. 73 7.1 7.2

结论 ......................................................................................................................................... 73 展望 ......................................................................................................................................... 75

致 谢 ........................................................................................................................................................ 76 参考文献 ...................................................................................................................................................... 1

第一章 绪论

第一章 绪 论

本章主要描述了IT项目管理系统的建设背景及主要实现的整体目标,并引出论文讨论的课题。

1.1 项目背景

随着信息化建设的高速发展,各行各业的电子化建设规模越来越大、信息化建设的管理越来越复杂,当今的IT项目系统(特别是公司主营的金融行业的IT系统)已经不再是单兵作战就能以独立完成的任务,在团队的项目实施中,科学的项目管理理念在项目中的作用便日益剧增。经历过一次次的项目延期、成本超出、质量低下……一系列项目的问题在项目实施中随着规模的扩大,越发明显的暴露在了项目管理者的面前,因此一套科学的IT项目管理系统的建设,便成为了目前公司项目管理保障的信息化建设的必备工具[1]。

国内的项目管理相对国外起步较晚,其理论主要依据于由美国项目管理学会的PMI资格认证机构提出的PMBOK[2,3,4](项目管理的知识体系 Project Management Body of Knowledge),但因为目前国内客户需求部门的人员知识体系的不成熟、管理制度的不成熟,导致各公司的项目管理要求上也存在着很大的差异。特别是金融机构中,目前很难能有一套通用的项目管理软件去满足所有公司的管理要求,经多方面的前期调研及考察,目前国内的项目管理系统市场较为混乱,产品多而杂,二次开发任务大。

目前在国内大中型金融机构中大多采取自行研发的方式来满足其对项目管理信息化建设的要求。因此,一套符合金融机构企业内部项目管理需求的IT项目管理系统的建设,便被提到了企业的工作议程。

经过前期一系列的调研,在产品选型上考察情况如下:

1

某大学硕士学位论文 表 1-1 产品实施选型分析表

成本 需求 费用估匹配算 度 产品选型 优势 劣势 产品采购 华腾OA管理系统 1.产品化程度较高。 1.功能无法完全满足企业2.企业品牌大,产品需求:项目考核机制差异较售后服务有保障。 大。 2.OA包含模块较多,很多与公司目前系统重叠。 3.费用高,定制开发成本更高。 1.价格便宜。 2.支持企业定制开发。 1.管理系统更能满足企业实际需求。 2.项目管理简单,仅需控制需求、进度及质量即可。 1.对外依赖性高,未来需求完善依赖性较高。 2.企业规模较小,产品售后保障力度不高。 1.项目实施成本高。 2.质量后续维护成本高。 高 低 产品+定制 50万 维普项目管理系统 中 中 产品+定制 30万 项目外包 高 高 20人月 40万 项目开发 开源项目:Podio 1.整合MSN(公司在1.与企业需求差异较大,管用),即使沟通。 理不仅仅只是任务分配。 2.无成本,免费使用。 2.缺乏有效的技术支持及定制开发。 1.管理系统更能满足1.时间紧、任务重要,人员企业实际需求。 有限。 2.项目管理简单,仅需控制需求、进度及质量即可。 3.复用企业现有空闲开发人员,成本低。 低 低 免费 自主开发 低 高 1人专职(2人复用)10个月 20万以内 经公司高层决议,项目采用自主研发方式,总投入20人月,由我担任专职项目经理,复用企业内部空闲人力资源,与2012年6月中旬正式立项,计划于2013年3月底投产。

1.2 选题依据

第一章 绪论

1.2.1 项目管理的发展历史

项目管理是从第二次世界大战时开始起步的。二战期间各国都将项目管理应用在军事系统的开发上。其中最著名的是美国研制原子弹的曼哈顿计划。针对曼哈顿项目技术难、时间紧的问题,军方不得不提出一种全新的管理办法来进行进度管理、预算管理等[5]。

从1950年到1980年项目管理主要用在军事上和建筑业中。学术界一般将1980年以前的项目管理称之为传统项目管理。1980年以后国际上一些著名的大公司都纷纷开始发展各自的项目管理方法,如IBM等。1990年后新的项目管理方法和工具不断地研究出来,项目管理已经成为企业发展重要的竞争手段。

国内的项目管理起步较晚,但随着项目越来越大,项目管理的重要性也越发凸显,在世界大的竞争环境下,国内的项目管理将在我们的经济发展中发挥这个重要的作用,中国经济发展需要项目管理[6,7]。

1.2.2项目管理的发展趋势

随着国内外对项目管理的不断研究,项目管理的发展逐渐的融入到了各个行业。项目管理已经打破了传统的方式,项目管理的理念已经融入到了企业所有的领域,包括销售、设计、质量、战略、人力等。

首先,周围的市场竞争变化越来越激烈,技术发展越来越快,而项目管理将成为企业面对这种市场挑战的有效手段。

其次,科技在不断创新,变化是永恒的。在这些新型的市场环境中,不断创新、快速实施、有效成本控制被提到了企业的建设需要,项目管理正式这一需求最有效的方式。

项目管理从出现到现在的发展状况。有着其发展的必然性,这是现代化建设的需要、这是社会发展的需要。项目管理从专业领域到广泛领域的融入已经是社会进步的必然趋势 [8]。

1.2.3 IT项目管理系统国内外行业分析

在国外,传统的项目管理方法已经相对成熟。国外研究者在其研究工程中倾注了很多精力,主要取得了以下几方面的成果:第一,对传统方法的改进。研究

3

某大学硕士学位论文

传统方法,取得了大量的研究成果。这些研究成果分为两类:对原有模型的改造和在算法上下功夫;第二,新进展。分为实证研究、规范研究、项目管理知识体系。目前国外的项目管理产品要么是重量级产品,如SAP,动辄百万甚至上千万,要么是轻量级的产品,如Citrix PODIO,虽然免费,单过于工作流推动,高规范性的过程管理下,反而忽略了对项目本身的信息化管理的需求。因此国外产品在理念上无法结合目前国内企业快速成长中对项目管理的基本要求。

目前国内项目管理市场项目管理系统繁杂,系统质量良莠不齐,系统大多采用闭门造车方式,项目管理产品的成熟度不高、扩展性不强,且需要太多的二次开发定制方式才能满足高端金融企业项目管理的需要。目前国内项目管理行业中较为知名的华腾、维普的产品也无法完全灵活满足企业的需求,企业的人员技术能力、稳定性等均存在着较大的不稳定性,项目实施风险大。目前国内金融机构中,项目管理系统均为外包定制开发或自主开发方式,鲜有采购标准软件方式。

1.2.4 新型IT项目管理系统的重要性

经过对金融机构IT项目管理系统需求的采集与分析,建立一套符合国际项目管理理念的项目管理信息化系统、建立一套契合企业实际需求的项目管理信息平台,就显得尤为重要。

1.3 本课题解决的关键问题

本课题将基于BMBOK先进理念、结合我司管理办法的IT项目管理信息的建设,在项目组、业务部门、企业高层领导间搭起信息的桥梁,建立为全公司人员提供项目资源共享的环境与平台,使之成为我公司项目建设的重要组成部分。

本课题的研究目标建立符合自身企业管理的IT项目管理系统,开发以项目管理、进度追踪为核心的IT项目管理信息系统,为金融机构项目管理的信息建设提供条件,从而实现企业项目管理信息化,实现项目管理过程的跟踪,并呢过有效降低项目管理的风险,为企业高层领导决策提供了有效的数据支撑。

IT项目管理系统课题的主要实现目标: ? 完成项目立项、人员分配。 ? 实现项目定期汇报与成本管理。

第一章 绪论

1.4 本文的主要内容与创新点

本文在深入分析了国内外IT项目管理的现状后,基于Java SSH(Struts, Hibernate,Spring)技术架构对我公司IT项目管理应用系统进行架构和开发,SSH架构能够充分发挥Java语言所独有的易用性和跨平台性,从而可以快速的构建了一个高效、安全的IT项目信息管理应用系统,以实现企业内部对项目管理的信息化管理需求。

本次论文对项目管理系统的设计与实现的创新点包括: 1. 研究PMBOK将理论结合实际,优化公司现有的管理流程。 2. 提出一个完整的便于扩展的项目管理数据模型。

3. 优化Java SSH框架,实现内存缓存、统一页面等多项技术细节。 论文重点论述了IT项目信息管理系统的设计与实现,通过项目立项、项目周报管理等主要模块的分析与设计,给出了项目管理系统的运行结果和对项目成本管理的过程。最后,对本文及后续的任务作出了有效的总结与美好的展望。

1.5 本课题的理论意义和实际价值

本课题研究的主要目标是建立一套符合金融机构企业内部项目管理信息化要求的IT项目管理系统,即开发一套以项目管理、成本及进度追踪为主要核心目标的IT项目管理信息系统,通过该系统能够为金融机构项目管理的信息建设提供必要的基础,从而实现企业项目管理信息化,实现对项目管理进度、成本、的实时追踪,并能有效降低项目管理的风险,为企业高层领导决策提供了有效的数据支撑。

以IT项目管理系统作为研究课题,更多的是希望理论与实践的结合,能够在项目管理的建设中,深化对PMBOK的知识体系的理解,只有更好的将理论与实践相结合,才能最大化的为企业降低风险、节省成本、创造价值。通过为IT项目管理系统的研究,充分表明了科学的项目管理理论在项目实践中,是保障项目成功的重要及有效的手段。

在实际实施中,我们通过为理论研究的落地,为金融机构的项目管理打造一套符合自身管理要求的项目管理系统,项目建成后将实现以下收益:

1. 有效提升项目过程管理:加强项目经理对项目的管理力度。

5

某大学硕士学位论文

2. 降低项目实施风险,提升项目实施质量,控制项目实施进度及成本。

1.6 文章的结构安排

本次论文的目录设置为:

1. 第一章节是绪论部分,绪论章节将简明扼要的说明了本次研究课题的背

景,并分析了目前金融机构项目管理理念的落实情况,指出了当前企业项目管理中的主要不足。

2. 第二章节是关键技术部分,关键技术章节中展现了本次课题研究中所涉

及基于Java SSH(Struts, Hibernate,Spring)架构的MVC的开发框架,并介绍了本次课题实现中应用的企业内部的开发平台的特点,并给出相关技术对于本次课题的作用。

3. 第三章节是系统分析部分,系统分析章节中针对金融机构项目管理需

求,提出了需求功能描述,以及相关角色对功能点的访问要求。 4. 第四章节是系统设计部分,系统设计章节主要描述了系统设计的主要模

块的分析和设计,其中包括项目立项、项目周报两个主要模块的流程图、类图及项目数据字典的设计。

5. 第五章节是系统实现部分,系统实现章节给出了本课题所用到的基于平

台的开发实现的具体方式,并针对项目立项、项目周报两个具体模块,给出了具体实现的代码和界面,并针对两个功能分析了项目成本挣值管理的具体落地方法。

6. 第六章节是系统测试部分,系统测试章节主要阐述了企业内部测试方法

论、测试分类、测试流程,并针对本课题的项目,实施了相关的功能测试,并针对测试结果作出总结,最终课题开发的系统达到投产要求。 7. 第七章节是结论及进一步展望,结论及进一步展望章节主要针对本次课

题实现后,提出了对项目实施后的总结和感想,并对项目的未来予以美好的展望。

第二章 基础理论及相关开发技术

第二章 基础理论及相关开发技术

本章主要讨论及分析了IT项目管理系统建设中涉及到的相关理论支持、技术架构以及使用到的开发平台,成熟的技术架构是项目成功的有力保障。

2.1 PMBOK项目管理体系介绍

PMBOK,即项目管理的知识体系(Project Management Body of Knowledge)是由美国的项目管理学会(PMI - Project Management Institute)提出的一套完整的项目管理理论,该组织旗下的项目管理资格认证(PMP - Project Management Professional)也是目前在国际、国内均得到极大认可的、业内最为著名的项目管理认证,PMBOKB之所以能得到了业内快速的普及,其一是项目管理在各行各业自身重要性越来越高,其次也是由于PMBOK本身完整性、科学性、有效性所决定。PMI早在70年代就提出了PMBOK的基础理论,该理论核心的项目管理九大体系如下 [9]。

图 2-1 项目管理体系一览图

7

某大学硕士学位论文

PMBOK的9个知识领域的具体内容[10,11]:

1. 项目综合管理项目:包括七个基本的子过程,分别是制订项目的章程、制

定项目初步的工作范围说明书、制定项目的项目管理计划、指导并监督项目执行过程、监控项目的日常工作、实施项目整体的需求变更控制、结项管理阶段。

2. 项目范围管理PMBOK将其分成5个阶段:分别是项目启动、范围计划、

范围界定、范围核实和范围变更控制。

3. 项目时间管理PMBOK提出,项目时间管理由下述六项任务组成:分别

是时间活动定义、时间活动排序、时间活动资源估算、各活动的时间估计、项目进度的编制、项目进度的控制。

4. 项目成本管理包括以下三个过程:项目成本估计、项目成本预算和项目成

本控制。

5. 项目质量管理主要包括以下三个过程:项目质量规划、项目质量控制和项

目质量保证。

6. 项目人力资源管理包括以下四个过程:人力资源规划、项目团队组建、项

目团队建设和项目团队管理。

7. 项目风险管理PMBOK将其归纳为六个主要过程:项目风险管理计划、

项目风险识别、项目定性风险估计、项目定量风险估计、项目风险应对计划和项目风险控制。

8. 项目沟通管理包括如下一些基本的过程:项目编制沟通计划、项目信息传

递、项目绩效报告和项目利害关系管理。

9. 项目采购管理主要包括:编制项目采购计划、编制项目询价计划、项目询

价、选择供应商、项目合同管理和项目合同收尾。

2.2 相关技术说明

2.2.1 Java技术架构

Java[12,13]是由Sun公司于1995年推出的一个面向对象的开发语言。Java技术已经发展了近二十年,目前Java社区的第三方的技术支持已经非常丰富,各类开源的技术架构、开发组件,能够大大提升应用软件开发的效率和系统运行的稳

第二章 基础理论及相关开发技术

定性,Java目前已被业内广泛接受,并成为目前跨平台B/S解决方案最佳的技术架构[14,15]。

Java技术的主要优势:

1. 跨平台部署:应用部署不受操作系统限制,能够运行在更为安全、稳定的

Unix系统,同时系统开发的可移植性也得到了很好的提升。

2. 简单快捷:Java简化了对指针的复杂管理,自动接管了对内存的底层控

制,大大降低了开发人员的技术要求,同时也大幅提升了开发项目的质量和稳定性。

3. 企业化:目前SSH架构的普及、Eclipse工具的免费开放,大大提升了Java

企业化的开发方法。

4. 开源支持:由于Java的开源,众多的第三方公司和非盈利组织为Java提

供了各类的开发组件,第三方的组件已大大丰富的开发人员的底层技术支持。

2.2.2 MVC设计模式

MVC[16](Model-View-Controller模型-视图-控制器)。即把一个开发应用的输入、处理、输出流程,按Model、View、Controller方式进行分层,这样一个开发应用将被分成三部分——模型层、视图层和控制层[17]。

图2-2 MVC模型

设计中考虑到有效的分割模型、视图和控制器,如果用户未来希望改变模型、视图、控制器的一个部分,在接口不变的前提下,其他模块将不受影响。即当模

9

某大学硕士学位论文

型发生变化时,控制器可不做改变,这种设计方式将针对各个角色实现不同侧面的开发,美工可以更关注在视图层的设计和开发,软件工程师门则可以更多去关注业务已实现数据模型的设计和开发。

一般MVC的设计。模型、控制器和视图是分离的,这样模型也可以与多个显示视图实现连接。因此,当模型发生变化时,控制器适当调整,其对应的多个视图将同时体现对应在模型上的调整,即可如图所示的关系:

图2-3 MVC模式结构(实线:方法调用,虚线:事件)

MVC模式不仅体现了功能模型和显示视图的分离,同时它也在很大程度上提升了应用系统的可扩展性和开发组件的可复用性,同时在可维护性也有了很好的表现,在B/S的应用系统开发中具有很强的优势。目前J2EE的主流MVC架构以JSP作为显示的视图,用Servlet实现控制器的功能,用JavaBean实现模型的作用。

MVC的设计模式是一种非常棒的软件架构,它所推崇的是一种开发的原则和模式,MVC将会使开发的系统更为健壮,在应用程序代码的复用和结构的设计方面都上了一个新的台阶[18-20]。

2.2.3 Hibernate应用框架

在早期的J2EE框架中,面向对象的软件和关系型数据库是整合在一起使用的,这样开发人员在使用中将不得不去在处理面向对象编码时,还要去关注数据库的SQL语言,无形中给开发人员带来了一定的不便,且在编码中容易出现问题。Hibernate[21,22]的诞生,为开发人员提供了一套完整的面向对象的Java对象与关

第二章 基础理论及相关开发技术

系型数据库表结构的有效的映射的手段[23]。即用Java对象模型可以直接映射到基于SQL的关系型数据库表结构中去。Hibernate不仅实现了Java类到数据库表的映射关系,同时还提供了对数据查询SQL和数据结果集访问的方法,从而大大降低了开发人员手工编写SQL和创建JDBC的复杂度和风险,从而大大提升了代码开发的质量和效率。

Hibernate对JDBC进行了非常有效但有时非常轻量级的对象封装,使得Java开发人员完全可以随心的使用面向对象编程的思维方式来操纵目标数据库中的表。该技术已经可以应用在任何JDBC的场景中,该技术目前既支持Java的客户端的编程,也支持在Servlet或JSP的B/S应用开发中使用。同样该技术也完全可以在支持EJB的J2EE架构中完美的使用,以实现对数据模型持久化访问。Hibernate也成为当下Java开发项目组中最主流的数据库持久层的框架。

Hibernate包括六个主要的接口,分别是:Session、SessionFactory、Transaction、Query、Criteria和Configuration。通过这些接口,不但能够对持久化的对象实现访问处理等操作,还能够对事务实现有效的管理。下面我们将针对这六个接口做出简要的介绍。

图2-4 Hibernate的主要接口

1. Session接口:Session接口主要用来运行被持久化的对象。但Session对

象是非线程安全的。

2. SessionFactory接口:SessionFactory接口主要用来实现对Hibernate的初

始化,SessionFactory主要用工厂模式来创建一个新的Session对象。大多数情况下一个项目只需要创建一个SessionFactory,但如果业务需要处

11

某大学硕士学位论文

理多个数据库时,可以为各数据库均创建各自的SessionFactory。 3. Configuration类:Configuration类负责配置和引导Hibernate,创建

SessionFactory对象。Hibernate的启动时,该类将首先指定到特定的文档位置,并过去相关的Hibernate配置,然后生成对应的SessionFactory对象。

4. Transaction接口:Transaction接口管理数据库事务的操作。同时Hibernate

也提供可以由开发人员自行设计并编写对事务处理的程序。

5. Query、Criteria接口:这两个接口主要用于执行各种数据库的查询操作。

它可以用于执行HQL语句或原始数据库中的SQL语言,用于对特定情况下面向对象访问的不足。

2.2.4 Struts2框架技术简介

Struts2[24]是基于MVC的B/S的编程的非常主流的设计框架。Struts2框架的主要特点:

1. 基于AOP思路将相关内容集中到单独的软件层,即拦截器。 2. 任何Class都可作为Action,不再必须受限于Struts的框架。 3. 提供了更加便捷、独立的Spring的集成服务。

4. 缺省了很多默认配置,非常有效的降低Struts开发环境配置。 5. 内置了Web2.0 AJAX技术,内置了java认证服务。

6. Action不再是单例,这样可以把人们从复杂的多线程编程中解脱出来。 Struts2核心构建元素如图所示:

图2-5 Struts2核心架构图

第二章 基础理论及相关开发技术

Struts2的模型包括了Action和Interceptor。

Action模块指的是一个简单的POJO对象,它已经不必须寄托于Struts2的框架,因此它的独立性、复用性都得到了很大程度的提升,能够根据需要的在该类中与业务代码及数据访问代码之间实现交互。Action是Struts2项目的核心模块。

Interceptor模块指的是一个遵守Struts2规范的对象,控制层能够在Action方法执行之前或执行后,跳出业务代码来执行拦截器中的程序。在开发中,可以实现对日志的记录,实现对系统安全性的控制,或是将调试的代码放到拦截器中实现,然后通过配置把拦截器和业务程序关联到一起。通过Interceptor的使用,从而使拦截器和业务代码各为一层,便于特特定处理的模块化、标准化的处理,这就是AOP思想[25-27]。

2.2.5 Spring框架技术简介

Spring [28]是一套非常强大的应用开发框架,Spring能够解决之前我们在J2EE开发中会经常发生的一些错误,Sping为基于J2EE的应用开发提供了完整的解决方案。Spring是一个组件化的架构,开发者的编码并不一定要受限于在该架构中,Spring允许人们任意的选择需要的模块,获知任意忽略不需要的模块,Spring还能够整合其它第三方技术。例如,在展现视图层采用的Struts,目前主流的J2EE框架也是将Struts整合到 Spring中,从而构建完整的MVC的架构[29]。

Spring的架构如图所示:

图2-6 Spring总体结构图

Spring框架的每个模块都是可以单独存在的,各模块的主要功能包括:

13

某大学硕士学位论文

1. 核心容器:提供了 Spring架构的基本功能。

2. Spring上下文:是一个配置文件,它向框架提供了上下文的信息。

包括JNDI、EJB等功能。

3. Spring AOP:该模块可以将面向对象的编程集成到Spring框架中。

开发人员可以很容易的让Spring框架中的任何对象都能完整的支持AOP。

4. IOC是Spring技术中的反转控制,其目的在于尚未创建对象的前

提下,仅通过对对象的描述就能快速的创建它们。在配置文件中需要指出各组件需要的服务,再由容器负责将这些对象联系在一起。

5. Spring Web 模块:Spring支持与Struts的整合。Spring Web

模块简化了请求与其参数绑定到控件的工作。

6. Spring MVC 框架:通过Spring的策略接口,MVC框架部分工作

将通过配置实现,MVC架构中包含了JSP、PIO等众多的视图技术。

Spring架构支持所有的J2EE服务器,Spring的大部分功能也能满足不同的业务功能的设计要求。Spring的核心理念是:支持不绑定到特定J2EE服务的可重用业务和数据访问对象。因此,Spring可以在任何的J2EE环境、特定的Java应用程序中复用[30,31]。

2.3 开发平台

本次开发中使用了公司多年沉淀的基于J2EE SSH架构的开发平台,该平台提供了基于底层技术的封装,使平台的实施中让开发人员能有更多的精力去关注业务的需求。

本文来源:https://www.bwwdw.com/article/qo2a.html

Top