部门项目管理系统的设计与实现毕业论文 - 图文

更新时间:2024-05-14 20:34:01 阅读量: 综合文库 文档下载

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

东北大学秦皇岛分校毕业设计(论文) 第 I 页

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

摘 要

部门项目管理系统,就是项目的管理者运用专门管理项目的系统软件,在有限的资源约束下,运用系统的观点、方法和理论,对项目涉及的全部工作进行有效管理。它从项目的需求分析开始到项目结束的全过程来进行策划以实现项目,包括项目人员的管理和分配等内容。

本文简要介绍了整个部门项目管理系统的开发过程,包括系统的需求分析阶段、详细设计、概要设计阶段和测试阶段,并通过文字、代码、表格、图片等多种形式详细介绍本系统的整体构架和设计特点。整个部门项目管理系统采用SSI框架设计完成,在设计方面,本系统也采用了B/S结构,同时使用JSP技术进行动态页面的设计,考虑到代码的可重用性和系统的安全性,本系统运用Java Bean对程序的关键代码进行封装,后台数据库使用Oracle,结合对项目管理知识的了解,本系统实现了对于项目的基本增加、修改、删除功能、条件查询功能和对于不同用户权限的管理。在Windows XP的操作系统下,网站页面框架采用Dreamweaver8,结合了java script技术开发出这个伸缩性好、扩展性强、容易维护、界面美观、功能实用的部门项目管理系统。

关键词:SSI框架,JSP,Oracle,需求分析

东北大学秦皇岛分校毕业设计(论文) 第 II 页

The Design and Implementation of Department’s Project Management

System

Author: Tutor:

Abstract

The department of project management system is the project manager of the project management system utilizing specialized software, in limited resource constraints, using system viewpoint and method and theory, all the work involved in the project management effectively. It from the beginning to the end of the project the whole process of project requirement analysis to planning to achieve the project, including project management and distribution, etc.

This paper briefly introduces the whole department project management system

development process, including system requirements analysis, detailed design, general design and testing phase, and through the text, code, forms, images, and other forms in detail the system's overall structure and design characteristics. The department project management system adopts the SSI framework design completed, in terms of design, this system also adopts B/S structure, using JSP technology for the design of dynamic pages at the same time, considering the reusability of code and the security of the system, this system uses the Java Bean encapsulates the key code of the program, use Oracle backstage supporter's database, combined with the understanding of the project management body of knowledge, this system has realized to the project's basic increase, modify, delete, query conditions and for different user rights management. Under Windows XP operating system, web page frame adopts Dreamweaver8, combined with the Java script technology can develop the good scalability, strong expansibility, easy maintenance, beautiful interface, functional department project management system.

Key Words: SSI framework, JSP, Oracle, needs analysis

东北大学秦皇岛分校毕业设计(论文) 第 III 页

目 录

1 绪论 ..................................................................................................................................... 1 1.1 系统开发的背景及目的 ................................................................................................ 1

1.1.1 系统开发背景 .......................................................................................................... 1 1.1.2 系统研究的意义 ...................................................................................................... 1 1.2 系统的实用价值 ............................................................................................................ 2 1.3 部门项目管理的现状及发展趋势 ................................................................................ 3 1.4 本文的章节安排 ............................................................................................................ 3 2 系统开发环境 ..................................................................................................................... 4 2.1 系统平台体系结构选择 ................................................................................................ 4 2.2 系统开发环境 ................................................................................................................ 5 2.2.1 前台开发环境 .......................................................................................................... 5 2.2.2 系统后台数据库环境 .............................................................................................. 5 2.3 J2EE平台概述 .............................................................................................................. 6 2.3.1 J2EE规范 ................................................................................................................ 6 2.3.2 J2EE体系结构 ........................................................................................................ 6 2.4 SSI框架介绍 ................................................................................................................. 8 3 系统分析 ............................................................................................................................ 12 3.1 可行性分析 .................................................................................................................. 12

3.1.1 可行性研究 ............................................................................................................ 12 3.1.2 经济可行性分析 .................................................................................................... 12 3.1.3 技术可行性分析 .................................................................................................... 12 3.1.4 社会可行性分析 .................................................................................................... 12 3.1.5 操作可行性分析 .................................................................................................... 13 3.2 需求分析 ...................................................................................................................... 13 3.2.1 项目目标 ............................................................................................................... 13 3.2.2 用户需求和模块功能 ........................................................................................... 13 4 系统概要设计 .................................................................................................................... 15 4.1 系统总体设计 .............................................................................................................. 15

4.1.1 系统设计目标 ........................................................................................................ 15 4.1.2 系统功能模块图 .................................................................................................... 15 4.2 E-R图 .......................................................................................................................... 15 4.3 数据库概要设计 .......................................................................................................... 17 5 详细设计 ............................................................................................................................ 20 5.1 系统登录模块说明 ...................................................................................................... 20

东北大学秦皇岛分校毕业设计(论文) 第 IV 页

5.1.1 功能简介及其页面的实现 .................................................................................... 20 5.2 员工管理模块说明 ...................................................................................................... 22 5.2.1 功能简介及其页面的实现 .................................................................................... 22 5.3 项目管理模块说明 ...................................................................................................... 24 5.3.1 功能简介及其页面的实现 .................................................................................... 24 5.4 部门管理模块说明 ...................................................................................................... 27 5.4.1 功能简介及其页面实现 ........................................................................................ 27 5.5 产品管理模块说明 ...................................................................................................... 29 5.5.1 功能简介及其页面的实现 .................................................................................... 29 5.5.2 添加产品: ............................................................................................................ 29 6 系统测试 ........................................................................................................................... 31 6.1 测试平台 ...................................................................................................................... 31 6.2 测试方法 ...................................................................................................................... 31 6.2.1 白盒测试法 ........................................................................................................... 31 6.2.2 黑盒测试法 ........................................................................................................... 32 结 论 ................................................................................................................................. 33 致 谢 ................................................................................................................................. 34 参考文献 ................................................................................................................................. 35 附 录 ................................................................................................................................. 36 附录A .................................................................................................................................. 36 附录B .................................................................................................................................. 40

东北大学秦皇岛分校毕业设计(论文) 第 1 页

1 绪论

1.1 系统开发的背景及目的 1.1.1 系统开发背景

在国外,传统的项目管理方法较于国内相对成熟。国外的研究者在其研究过程中付出了很多努力,也收获了很多成果。国外的系统主要是改进了传统的方法,在研究传统方法的过程中,对原有模型的改造和算法上下了大量的功夫。通过吸收了传统方法中的精华,对原有模型进行改造,对项目管理知识体系的实证研究,规范研究均获得了新进展。

项目管理知识体系最先由美国项目管理协会提出,由1976年发展至今,关于企业项目管理的理论体系也在日臻完善,并在全球范围内普及推广,企业项目管理软件的功能在不断地提高,使得企业项目管理从理论走向了实际实施,进而发挥了很高的效益。现如今,很多跨国公司在企业中都采用企业项目管理技术和企业项目解决方案。渐渐的形成了企业项目管理化的局面。

近些年来,国内对于企业级项目管理软件关注的人越来越多,从从前的个人到今天的企业,由此可见在未来的企业级项目管理工具需要在满足单项目管理的需求下,同时也要满足企业级项目管理的需求。企业级项目管理软件作为IT企业整个系统中的一个子系统。企业级项目管理工具要具有高度的可集成性,以便项目管理系统与其他的业务管理系统的整合,这样才能发挥较高的管理效率。 1.1.2 系统研究的意义

项目管理作为一种管理方式在国际上获得了广泛的应用,已经从80年代仅限于建筑,国防,航天等行业迅速发展到今天的计算机,电子通讯,金融业甚至政府机关等众多领域。随着计算机系统的高速发展,项目管理技术的不断进步,各种各样的项目管理软件层出不穷的出现,其功能,特点,应用对象也各不相同。随着各行各业的不断发展,企业内的项目拓展和投资比比皆是。为了提高项目管理水平,赢得市场竞争,特别是加入WTO后在国内,国际市场上拥有与国际接轨的项目管理人才,越来越多的业界人士正通过不同的方式参加项目管理培训并力争获得权威的项目经理资格认证。新世纪项目

东北大学秦皇岛分校毕业设计(论文) 第 2 页

管理的迅速兴起,给软件企业的发展带来了前所未有的发展机遇。

因此,研究如何建立一个精简的,有效的企业项目管理体系,企业项目管理系统内如何能够有效的支持企业项目管理,提高企业的项目管理能力,具有非常重大的实际应用意义。

1.2 系统的实用价值

项目管理系统能给企业带来很多的实用价值,主要作用如下: (1)精确性

应用项目管理软件的一个主要益处就是可以大项目大提高精确性,对于大型项目的计算资源使用情况是非常困难的,项目管理软件有精确的算法来计算项目信息并设有大量的内部例行程序检察用户的错误。

(2)经济型

项目管理软件的售价对大多数企业业务而言确实物有所值。 (3)使用简便

近几年来,项目管理软件的操作使用变得极其简单,稍加训练就可以完全掌握。诸多优点,使得项目管理软件的用户迅速增加。

(4)处理复杂问题的能力

项目管理软件在处理大型项目的某些方面确实比人工简便的多。对于只有少数活动的短期项目,人工方法可以使用,但是如果项目有数以千计的活动,上千种资源,项目管理软件处理复杂工作的协助作用就显得格外重要。

(5)可维护性和可更改性

对人工系统进行项目信息的维护和修改,通常比较麻烦。例如,对某个项目的管理没有应用计算机,那么每次发生变化时,项目人员就不得不人工重新设计,这就显得非常麻烦。利用项目管理软件资源的任何更改都会自动反应到网络图表,成本表以及资源颁布表等这些项目文件中。

(6)保持纪录

项目管理软件的一个主要优点就是它能很好的保持纪录。例如,可以保护有关每个团队成员的进度计划,以及各项任务所用资源的数据资料。

(7)速度

收集好相关数据资料并且输入后,软件就能非常迅速地进行几乎每一种想出来的计

东北大学秦皇岛分校毕业设计(论文) 第 3 页

算。系统在分秒之内便可完成修改工作。

(8)假设分析

进行假设分析是项目管理软件的一个超前进步的功能,也是它的一个显著优点。假设分析是用户可以了解项目中发生的各种情形的效果。用户在软件上运行不同的情景,然后做出评估。这样,项目经理对某些偶发事件就可以做好计划准备,并估计相应的结果。

1.3 部门项目管理的现状及发展趋势

部门项目管理早起的概念是基于项目型公司而提出的,即“管理整个企业范围内的项目”,它着眼于企业层次总体战略目标的实现对企业中的诸多项目实施管理。随着外部环境的发展变化,项目管理方法在长期组织中广泛应用已经不局限与传统形式的“项目型公司”,生产运行型企业或者政府部门等非企业型组织也广泛的实施项目管理。

现代项目管理的日趋发展,让我们看到了部门项目管理在我们生活中广阔的应用空间。现如今,各种各样的项目管理软件如雨后春笋般出现。总体来看,在新的商业环境下,项目管理已成为企业发展的有力保障,企业部门项目管理成为未来长期性组织管理的一种趋势。尽管我国众多企业还未真正意义上的实现企业项目管理,但在许多企业中推行企业项目管理具备了优秀的基础条件,项目管理的国际化正形成趋势潮流。 1.4 本文的章节安排

本文共分六章,具体安排如下:

第一章为绪论。介绍了部门项目管理系统的开发背景和研究意义、实用价值、发展现状及其趋势。此外,还对本文的章节安排做了简要的介绍。

第二章为系统开发环境。介绍了实现本系统的平台体系、前后台的开发环境、J2EE概述及SSI的简介

第三章为系统分析。分析了系统的可行性和用户需求。

第四章为系统概要设计。介绍了系统的总体设计、系统的E-R图及数据库的概要设计。

第五章为系统的详细设计。介绍了系统的各个模块:登录模块、员工管理模块、项目管理模块、部门管理模块及产品管理模块。

第六章为系统测试。介绍了系统测试平台和测试方法。

东北大学秦皇岛分校毕业设计(论文) 第 4 页

2 系统开发环境

目前在系统的应用开发领域中,主要分成了两种主流的编程体系,一种是基于浏览器的B/S(Brower/Server)的结构,另一种则是C/S(Client/Server)结构,如今相关系统的开发设计中都选择B/S结构,在本次的企业项目管理系统开发设计中,选择的就是开发环境为B/S结构的体系,采用基于SSI的框架,使用JSP技术,后台数据库选择了Oracle。

2.1 系统平台体系结构选择

在本系统中的应用开发领域主要采用了B/S结构。B/S结构即浏览器和服务器结构,是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发,维护和使用。客户机上只要安装一个浏览器,服务器安装了Oracle,Sybase,Informix或SQL Server等数据库,本设计采用的是Oracle数据库,浏览器通过Web Server同数据库进行数据交互。在这种结构下,用户界面主要通过浏览器实现,节约了开发成本。

应用服务器 数据库服务器 Web服务器 客户端浏览器 ?? 图2.1 B/S结构

客户端浏览器

B/S最大的优点是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零安装,零维护。对于系统的扩展非常容易。现如今,B/S结构的使用越来越多,特别是由需求推动了AJAX技术的发展,它的程序也能在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了交互性,能进行

东北大学秦皇岛分校毕业设计(论文) 第 5 页

局部实时刷新。 2.2 系统开发环境 2.2.1 前台开发环境

前台开发环境即JSP的开发环境。JSP(Java Server Pages,Java服务器主页)技术为创建显示动态生成内容的Web页面提供了简捷而快速的方法。JSP技术的设计目的使得构造基于Web的应用程序更加容易快捷,这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。

JSP是在普通Html中嵌入了Java代码的一个脚本。由于JSP使用JAVA作为程序设计脚本语言,因此需要建立Java的运行环境,编译和调试运行Java应用程序,因此需要安装JDK(Java Develop Kit,Java开发工具包)。同时,JSP是基于Web的java应用程序,因而它需要有特定的运行环境,即解释器。所以我们同时也要安装由Apache开发的Tomcat,因此建立JSP运行环境需要安装两个软件:j2sdk和Tomcat。

配置java运行环境即安装JDK,安装了JDK就是建立好了J2SE运行环境 。安装结束后,需要配置JSP运行环境。首先需要安装Web服务器的tomcat。安装完毕后 ,打开Tomcat后,打开浏览器,在地址栏中输入“http://localhost:8080”,可以看到Tomcat的欢迎界面。

只要我们看到了这个界面,就说明安装成功,并且JSP的运行环境已经配置完毕。在此需要注意的是:如果系统中已经有其他的程序占用了8080端口,在启动时会失败。可以通过修改端口来解决问题。 2.2.2 系统后台数据库环境

本系统设计后台所需的开发工具是Oracle10g。Oracle数据库系统是美国Oracle公司提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器体系结构的数据库之一。Oracle数据库是目前世界上使用最为广泛的数据库管理系统,它具有完整的数据管理功能,具备完备关系,实现了分布式处理的所有功能。

Oracle是当前最流行的大型数据库之一,它支持包括32位Windows,64位Windows,OS,HP-UX,ALX5L, Solaris和Linux等多种操作系统。

Oracle具有完整的数据管理功能,可解决数据的大量性,数据的持久保存,数据的共享,数据的可靠等诸多问题。同时,它是关系完备的产品,关系型DBMS的所有信

东北大学秦皇岛分校毕业设计(论文) 第 6 页

息都应在逻辑上用一种方法,即表中的值显示的表示;保证访问,保证视图更新,只要形成视图的表中的数据变化了,相应的视图中的数据同时变化。Oracle数据库自第5版就提供了分布式处理能力,到第7版就有比较完善的分布式数据库功能。用Oracle能轻松的实现数据库仓库的操作。 2.3 J2EE平台概述

J2EE是java2 platform,Enterprise Edition的缩写,它是由美国的Sun Microsystems公司提出的一种用于开发分布式企业级应用程序的技术架构。J2EE提供了一个多层次的分布式应用模型和一系列开发技术规范。J2EE简化了开发大型企业及应用系统的难度。如今,J2EE平台已经成为了开发分布式企业级应用的标准平台之一。 2.3.1 J2EE规范

J2EE平台由一整套服务,应用程序接口和协议构成,它对于开发基于Web的多层应用提供了在功能上的支持,以下对J2EE中的4种技术规范进行描述:

(1)JDBC(Java Database Connectivity):JDBC API为访问不同的数据库提供了一种统一的途径。JDBC对数据库的访问也具有平台无关性。

(2)JSP(Java Server Pages):JSP页面由HTML代码和嵌入其中的java代码组成。服务器在页面被客户端请求以后对这些代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。

(3)Java Servlet: Servlet是一种小型的Java程序,它扩展了Web服务器的功能。 (4)XML (Extensible Markup Language):XML是一种可以用来定义其它标记语言的语言。它被用来在不同的商务过程中共享数据。 2.3.2 J2EE体系结构

J2EE提供了基于组件的方式来设计,开发,组装和部署企业应用。J2EE使用了多层分布式的应用模型,主要通过以下几层来实现:

(1)客户层,运行在客户计算机上的组件。 (2)Web层,运行在J2EE服务器上的组件。 (3)业务层,运行在J2EE服务器上的组件。

J2EE应用程序是由组件构成的。应用程序客户端和Applet是指运行在客户计算机 上的组件。基于Java Servlet和JSP技术的组件叫做Web组件,主要运行在服务器上。

东北大学秦皇岛分校毕业设计(论文) 第 7 页

企业Java Bean组件叫业务组件,也运行在服务器上。下面对J2EE的三个应用模型进行简要说明。

(1)客户端

J2EE客户端可以是一个Web组件或者是一个应用程序客户端。主要是Web客户端包括web页面和web浏览器;小应用程序,主要运行在安装了Java虚拟机的web浏览器的客户端;应用程序客户端,主要运行在客户机,可以提供用户界面;Java Bean组件结构,在服务器和客户端两层中包括了基于Java Bean的组件结构,通过Java Bean可以实现数据的流动,可以在应用程序客户或Applet与运行在J2EE服务器上的组件之间,或者是在J2EE服务器和后台数据库之间;J2EE服务的通讯,客户层可以直接与J2EE服务器上运行的业务层之间通讯,也可通过运行在Web层中的Servlet和JSP来实现。

(2)Web组件

J2EE的web组件可以是Servlet或JSP页面。 (3)业务组件

业务组件是指由位于业务层的企业Bean执行的逻辑,这些业务代码能够解决商业 领域上的一些重要的需求。现在主要有三种不同类型的企业Bean:会话Bean,实体Bean和消息驱动Bean。会话Bean代表客户的一次短暂的会话过程。在客户执行完成后,会话Bean以及它所包含的数据也随之流失。实体Bean代表的是持久的数据,既存储在数据库的一行纪录,即使客户终止或者服务器关闭,在J2EE底层确保实体bean的数据被保存下来。

(4)企业信息系统层

企业信息系统层处理企业信息系统的软件,包括企业组织结构系统。

对以上关于J2EE体系结构的概述,可以归纳到以下几个概念,首先EJB即Enterprise Java Bean,是一种组件架构,用于开发和部署面向对象的,分布式的,企业级的应用程序。

EJB包括会话Bean(session bean)分为无状态会话Bean(stateless session bean)和有状态会话Bean(stately session bean),实体Bean(entity bean)分为Bean管理实体Bean和容器管理实体Bean,由于这种Bean对应于数据库中的记录,所以数据库记录的任何改变也被同步到组件池中的相关bean中,这个过程叫做持久性。消息驱动Bean(message-driven bean)。

东北大学秦皇岛分校毕业设计(论文) 第 8 页

其次,容器即container,一个实体,它管理组件的生命周期,安全,部署,和运行时服务。每个类型的容器都只提供与相应类型的组件相关的服务。如EJB,WEB,JSP,Applet和应用程序客户端。其中,EJB容器和Web容器都运行在J2EE服务器中。 2.4 SSI框架介绍

1、Struts2框架技术

Struts2框架是从Web Work基础上发展而来的。因为Struts2是Web Work的升级,并不是全新的框架,因此稳定性,性能都很好。并且拥有了Struts1和Web Work的优势。下面将会详细介绍Struts2的常用的知识点。

MVC思想,MVC并不是Java语言所特有的设计思想,也并不是Web应用所特有的思想,它是所有面向对象程序设计语言都应该遵守的规范。MVC思想将一个应用分成三个基本部分,Model(模型),View(视图)和Controller(控制器),其中Model实现系统中的业务逻辑,通常可以用Java Bean或EJB来实现;View用于与用户的交互,通常用JSP来实现;Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示。这三个部分协同工作,从而可以提高应用的可扩展性及可维护性。在Struts2中,Struts2是一个pull类型的MVC。其中,Action充当MVC的模型的model部分,JSP作为MVC的模型的view部分,过滤器和拦截器作为MVC的模型的controller部分。

Struts2的特点:无需与Servlet API整合,更容易测试;优雅的请求参数封装;灵活的试图技术;丰富的表达式语言;机动、灵活、简单的配置;线程安全的控制器(Action);霸气的插件。

2、Spring框架技术

Spring是一个开源框架,它由Rod Johnson创建。主要是为了解决企业应用开发的复杂性而创建的。Spring使用基本Java Bean来完成由EJB完成的事情。Spring的用途不仅限于服务器端的开发。由于Spring的简单性,可测试性和松耦合性。任何的Java应用可以使用Spring。

Spring是一个轻量级的控制反转(IOC)和面向对象(AOP)的容器框架。

轻量:主要从大小和开销两方面而言。此外,Spring是非侵入式框架,主要体现在,Spring应用中的对象不依赖于Spring特定类。

控制反转:Spring通过一种控制反转(IOC)的技术促进了松耦合。控制反转应用本

东北大学秦皇岛分校毕业设计(论文) 第 9 页

身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责的,这样控制权就由应用转移到了外部容器,控制权的转移即所谓的反转。在运行期,由外部容器动态的将依赖对象注入到组件中即称为依赖注入。依赖注入主要有三种方式:接口注入,属性注入,构造函数注入。

面向切面:Spring还提供了面向切面编程的丰富支持,面向切面编程主要是针对业务处理过程的切面进行提取,它所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果。

容器:Spring包含并管理应用对象的配置和生命周期,它是一种容器,使得用户可以配置自己的每个Bean如何被创建,以及Bean创建单独的实例或生成一个新的实例,及它们之间如何相互关联。

框架:Spring可以将简单组件配置,组合成为复杂的应用。在Spring框架的应用中,应用对象被声明在一个XML文件中。Spring当然也提供了很多方便的基础功能如事务管理,持久化框架集成等等。

基于这些Spring的特征,我们在应用开发中可以编写出更加方便管理,方便测试的优秀代码。同时也为Spring中的各种模块提供了大力的支持。

Spring框架由7个定义明确的模块组成。下面将简要介绍这7个模块。

(1)核心容器:核心容器是Spring框架中最基础的部分,通过依赖注入(Dependency Injection)特征来实现容器对Bean的管理,即是由核心容器提供的。在这其中最基本的概念是Bean Factory,它是任何Spring应用的核心。这里最基本的概念是Bean Factory,Bean Factory是工厂模式的一个实现,它使用IOC将应用配置和依赖说明从实际的应用代码中分离出来。

(2)应用上下文(Context)模块:上下文模块使它成为一个框架。这个模块拓展了Bean Factory的概念。主要增加了对国际化消息,事件传播,以及验证的支持。另外,这个模块还提供了许多企业服务。

(3)Spring的AOP模块:AOP模块是在Spring应用中实现切面编程的基础。AOP主要是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的莫个步骤或阶段,以获得逻辑过程中各个部分之间低耦合的隔离效果。AOP的实现步骤是首先确定连接点(切点),确定处理逻辑调用模式,编写处理逻辑,配置ProxyFactoryBean实例。

(4)JDBC抽象和DAO模式:使用JDBC经常导致大量的重复代码,取得连接,创

东北大学秦皇岛分校毕业设计(论文) 第 10 页

建语句,处理结果集,然后关闭连接。使用了Spring的JDBC和DAO模块就可以抽取这些没必要的重复代码,保证数据库访问代码干净简介,防止因关闭数据库资源失败而引起的其它问题。另外,这个模块还是用了Spring的AOP模块为Spring应用中的对象提供了事务管理服务。

(5)对象/关系映射集成模块:Spring还提供了ORM模块个使用对象/关系映射工具的用户。Spring并不是实现它自己的ORM解决方案,而是为几种流行的ORM框架提供了集成方案,包括如Hibernate,JDO和IBATIS SOL映射。Spring的事务管理则支持这些经典的ORM框架。

(6)Spring的Web模块:Web上下文模块建立与应用上下文模块之上。这个模块提供了面向服务的支持。

(7)Spring的MVC框架:Spring为构建Web应用提供了一个功能全面的MVC框架。Spring的MVC框架使用IOC实现了控制逻辑和业务对象的弯曲分离。

通过以上内容我们对Spring框架的详细介绍,我们了解到由于spring框架的自身特点使得J2EE更加容易使用,面向接口而不是针对类编程,减轻了开发的复杂度,Spring框架还会帮助我们,使代码的测试更加简单,同时Java Bean提供了应用程序配置的最好方法。Spring框架技术的出现让我们这些Web开发的用户获益匪浅。

3、Ibatis框架技术

Ibatis一词来源于“internet”和“abatis”的组合,是一个由Clinton Begin在2001年发起的开放源代码项目。最初侧重于密码软件的开发,后来成为一个基于Java的持久层框架,包括SQL Maps和Data Access Objects(DAO)。

相对Hibernate和Apache OJB等“一站式”ORM解决方案而言,Ibatis是一种“半自动化”的ORM实现。Ibatis框架让你能够更好的在JAVA应用中设计和实现实体层。这个框架有两个主要的组成部分,一个是SQL Maps,另一个是Data Access Objects。另外还包括一些可能有用的工具。SQL Maps:Sql Maps 是整个Ibatis Database Layer的核心,通过使用它可以节约数据库操作的代码量。Sql Maps使用一个简单的XML文件来实现Java Bean到SQL statement的映射。与其他框架相比,其最大的优势在于简单。Data Access Objects允许通过一个简单接口来操作数据,从而隐藏实现的细节。使用DAO,可以动态的配置应用程序来访问不同的实体存储机制。Ibaits的工作流程:SQL Maps提供一个简单框架,通过XML描述JavaBeans,MAP implementations甚至原始类型的包

东北大学秦皇岛分校毕业设计(论文) 第 11 页

装到JDBC。

对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系。因此,对象-关系映射系统一般以中间见的形式存在,主要实现程序对象到关系数据库库数据的映射。

POJO(Plain Ordinary Java Objects)一般来讲,POJO有一些private的参数作为对象的属性。然后针对每个参数定义了get和set方法作为访问的接口。

4、SSI在本文中的工作原理

本节将通过所开发的项目的MVC模式,对SSI框架在项目开发中的应用进行简要的介绍。

首先是在控制层,利用Struts2的标签功能,在Action中直接与JSP页面上的数据进行交互。同时,在调用业务逻辑层的应用时 ,Struts2提供了对Spring的支持。开发人员需要完成对struts.xml的配置工作和编写各个Action类。

在业务逻辑层,可以利用Spring框架的依赖注入来实现对业务逻辑类和DAO类的实例编写;在事务处理的方面,我们可以利用Spring提供的面向切面的事务处理功能,这样就可以使得数据的事务控制与数据访问接口的实现想脱离。在对象关系映射方面,利用Spring对数据库连接池的托管和对Ibatis框架的支持。开发人员需要完成对数据源的配置,对不同模块所对应的application*.xml文件的配置,以及对业务逻辑的接口定义和具体业务逻辑实现的代码编写。

在持久层,利用Ibatis提供的半自动化的对象关系映射的实现,开发人员需要编写具体的SQL语句,为系统设计提供了更大的自由空间。另外,开发人员需要完成对SqlMapConfig.xml 的配置,以及对DAO接口的定义和DAO接口的实现。

在各层之间进行交换的过程中,利用数据传输类进行数据的传递和交互。其中,数据传输类与数据库表一一对应。

SSI框架能够降低我们代码的耦合度,增强了代码的健壮性和可重用性,加快了开发速度,但是也有许多不足之处,也会给我们带来不便。

东北大学秦皇岛分校毕业设计(论文) 第 22 页

5.2 员工管理模块说明 5.2.1 功能简介及其页面的实现

(1)新增员工:

系统对新员工进行信息的添加,这个模块实现了对员工的信息录入功能,并将所填写的相关信息提交到数据库进而保存。员工信息主要包括:员工编号,员工名称,密码,部门角色,电话,电子邮箱,删除标志,员工类型,系统限制,员工部门等。点击提交按钮时,系统会自动检查输入的数据类型是否与定义的数据类型向匹配,如果类型匹配则将数据成功保存。在添加过程中,需要对添加的数据进行验证。添加成功后返回账户管理模块的首页面。操作页面如图5.4所示,其中带“*”的为必填项,员工部门为部门管理模块中的所有部门,用户名的位数也有限定,密码和确认密码必须一致,电话限制为由1开头的11位数字,邮件的格式必须正确,员工部门是部门管理中所包含的部门,并且会随着部门管理中对部门的操作而做相应的变化,如图5.5所示为输入不正确时页面的提示效果。

图5.4 新增员工页面

(2)员工信息查询:

员工查询主要完成员工账号的查询工作,可以查询全部员工的账号信息,也可以根据条件查询符合条件的员工信息。本模块查询条件可以为员工的姓名,电子邮箱,

东北大学秦皇岛分校毕业设计(论文) 第 23 页

图5.5 验证错误的页面

角色。因为员工信息的条数众多,所以本部分还针对分页做了相关的处理,例如:对角色是管理员的员工进行筛选,如图5.6所示:

图5.6 员工查询页面

(3)删除和修改员工信息:

对于显示员工信息的资料展示,企业的管理人员需要定期对企业人员的状态进行跟踪和记录,随时更新员工状态的变化。在此模块中,拥有管理权限的管理人员需要对显示员工的信息进行和删除操作,其操作权限仅限于高级管理员和人力资源管理员,普通

东北大学秦皇岛分校毕业设计(论文) 第 24 页

用户和SQA在登录时修改与删除按钮是不可见的,管理员选中要删除或修改的员工信息,定位到员工编号,进而进行操作,操作界面如图5.7所示:

图5.7 删除员工页面

选中需修改员工的信息,再点击编辑人员,此时员工信息会跟踪到修改页面上,大大方便了人员的操作,如图5.8所示:

图5.8 修改员工页面

5.3 项目管理模块说明 5.3.1 功能简介及其页面的实现

(1)新增项目:

公司对新建的项目进行信息的添加,这个模块主要是实现对项目的信息录入功能,并将所填写的内容信息提交到数据库中的项目表信息中进行保存。项目信息主要包括:项目编号,项目名称,项目状态,项目类型,PM,SQA,开始日期,结束日期,产品

东北大学秦皇岛分校毕业设计(论文) 第 25 页

ID,产品名称,主题,项目描述。点击保存按钮,系统自动检查输入的数据类型是否与定义的数据类型匹配,如果匹配则保存数据,点击重置按钮则将输入的信息清空。操作页面,如图5.9所示:

图5.9 新增项目页面

(2)项目信息查询

项目的查询模块主要完成项目的查询操作,对项目编号,项目名称,项目开始时间三项进行的查询。

查询项目的详细信息可分为两种查询方式:模糊查询和精确查询。如模糊查询可以按项目编号和项目名称查询,点击查询就可以显示在这个开始时间进行的项目。精确查询可以按照项目开始时间进行查询,点击查询按钮就可以显示该项目的详细信息,同时可以对查询到的项目进行修改。如图5.10所示:

图5.10 查询项目页面

东北大学秦皇岛分校毕业设计(论文) 第 26 页

(3)项目信息的删除和修改:

本模块主要对项目的信息的维护操作,拥有权限的用户必须对项目的状态进行跟踪与记录,随时更新状态发生变化的项目。主要是对显示的项目进行修改和删除操作,以及对项目的选定项目成员等操作,此操作仅限于有权限的用户。

用户在5.10所示的页面上选中所要删除项目前面的单选按钮再点击删除项目即可删除所选中的项目,操作页面如图5.11所示:

图5.11 删除项目信息

用户在5.10所示的页面上选中所要编辑项目前面的单选按钮再点击编辑项目即可跳转到修改项目的操作页面,同时项目信息也自动跟踪到该页面上,大大方便了人员的操作,如图5.12所示:

图5.12 修改项目信息

(4)选定成员:

东北大学秦皇岛分校毕业设计(论文) 第 27 页

每个项目都有员工为其工作,在项目管理的首页面点击添加人员可以为该行对应的项目添加人员,点击添加人员显示的页面中的员工是账号管理中所有成员,图5.13是为项目编号为1242选定成员的示例,为项目添加了三位成员:阿徐、张韶涵、张涵。点击提交跳转到如图5.14所示页面,同时在项目管理首页面点击分配角色也是跳转到该页面。

图5.13 选定项目成员页面

图5.14 查看项目的成员

5.4 部门管理模块说明 5.4.1 功能简介及其页面实现

部门管理实现的功能有添加部门、修改部门、删除部门、列表显示所有部门的信

东北大学秦皇岛分校毕业设计(论文) 第 28 页

息,部门管理的首页面如图5.15所示:

图5.15 部门管理页面

(1)新增及修改部门:

企业对新建的部门进行信息的添加,本模块实现对部门信息的录入功能,将所填写的内容提交到数据库中的部门表信息中进行保存。添加部门和修改部门在部门管理页面上,点击添加部门按钮显示的页面如图5.16所示,点击添加按钮系统会自动检查如果匹配则保存数据。点击修改按钮,页面如图5.17所示,数据会自动显示在文本框里,直接对其修改再点击修改即可。若不点击添加部门和修改部门按钮,则添加和修改功能是隐藏的。

图5.16 新增部门页面

东北大学秦皇岛分校毕业设计(论文) 第 29 页

图5.17 修改部门页面

5.5 产品管理模块说明 5.5.1 功能简介及其页面的实现

产品管理实现的功能有:添加产品、修改产品信息、删除产品、列表显示所有部门的信息,产品管理的首页面如图5.18所示:

图5.18 产品管理页面

5.5.2 添加产品: (1)新增及修改产品:

企业对产品进行信息的添加,本模块实现对产品信息的录入、修改及删除功能,将所做的内容提交到数据库中的产品表进行保存。添加产品和修改产品在产品管理页面

东北大学秦皇岛分校毕业设计(论文) 第 30 页

上,点击添加产品按钮显示的页面如图5.19所示,点击添加按钮系统会自动检查,如果匹配则保存数据。

图5.19 添加产品

点击修改按钮,页面如图5.20所示,数据会自动显示在文本框里,直接对其修改再点击修改即可,若不点击添加产品和修改按钮,则添加和修改功能是隐藏的。

图5.20 修改产品信息

东北大学秦皇岛分校毕业设计(论文) 第 31 页

6 系统测试

系统测试,英文是System Testing。是将已经确认的软件,计算机硬件,外设,网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,系统测试是针对整个产品系统的测试,目的是验证系统是否满足了需求规格的定义,找出需求规格不符或与之矛盾的地方,从而完善的方案。系统测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。是基于系统整体需求说明书的黑盒类测试,应覆盖系统所有联合的部件。对象不仅仅包括需测试的软件,还要包括软件所依赖的硬件,外设甚至包括某些数据,某些支持组件及其接口。 6.1 测试平台

测试环境,如下表所示:

表6.1 测试表

软件环境

操作系统 数据库 测试平台 浏览器

6.2 测试方法

中文版Windows 7

Oracle10g VS2008 IE6.0/7.0

CPU 内存 网卡 带宽

硬件环境

2.80GHz 1M 100Mbps 1M

本系统而言,要查找出开发过程中的错误,就要保证对系统的测试尽可能的全面,一方面通过软件测试来检查本系统的每个功能的执行情况;另一方面,详细测试软件执行的内部过程是否完全按照规格说明书上的规定正常运行。这两方面的测试分别称为黑盒测试法和白盒测试法。 6.2.1 白盒测试法

白盒测试也称作结构测试或者逻辑结构测试。白盒测试主要是按照程序内部的结构测试程序,通过测试来检测系统内部动作是否按照设计规格说明书的规定正常运行,检验程序中的每条通路是否都能够按照预定的要求正确执行。白盒测试主要是针对系统程

东北大学秦皇岛分校毕业设计(论文) 第 32 页

序的细节来进行测试,主要是通过设计测试数据,检验程序的每个模块的执行路径的具体情况。这些执行路径包括程序的逻辑判定,循环的边界条件,和界限内的条件等等。白盒测试适用于程序的逻辑相对简单时,才能够保证验证所有的路径。当遇到多重选择或者多层的循环嵌套时,路径的数目就会非常庞大,实现所有路径的验证就变得非常困难。因此,对于我们来说,对于测试数据的方法的选择就起到了非常关键的作用。 6.2.2 黑盒测试法

黑盒测试也称功能测试,主要是通过测试来检测每个功能能否都正常使用。黑盒测试法是把程序看作一个黑盒子,测试过程中不需要考虑程序的内部结构和具体测试处理过程的测试方法。它只需要检查程序的每个功能能否按照规格说明书的内容正常使用,程序能否接收数据并产生争取的输出信息,能否保证外部信息的完整性,安全性。

黑盒测试主要测试的是功能,黑盒测试法设计程序测试用例的方法主要有等价划分法,边界值分析法,错误推测法,主要的目的是设计以最少的测试数据子集来尽可能多地测试出软件系统中的错误。本系统主要采用的即是黑盒测试法。

东北大学秦皇岛分校毕业设计(论文) 第 33 页

结 论

本文主要介绍了基于Struts2+Spring+Ibatis 框架下项目管理系统的设计与实现,该系统实现了对大量的项目进行管理,从而大大提高了企业管理效率。在控制层,利用Struts2的标签功能,在Action中直接与JSP页面上的数据进行交互。在业务逻辑层,可以利用Spring框架的依赖注入来实现对业务逻辑类和DAO类的实例编写。在持久层,利用Ibatis提供的半自动化的对象关系映射的实现,开发人员需要编写具体的SQL语句,为系统设计提供了更大的自由空间。

本文通过需求分析和系统,实现了部门项目管理系统。该系统实现了以下四个功能: (1)账户管理:实现对员工的增、删、改以及对所有员工的模糊查询。 (2)项目管理:实现对项目的增、删、改、查以及为某个特定项目分配人员。 (3)部门管理:实现对部门的增、删、改、查功能。 (4)产品管理:实现对产品的增、删、改、查功能。

除此之外,在四个模块中都可以退出当前用户的登录状态而跳转到登录页面上,此外,还对人员的登录做了验证,不同角色登录的结果不一样,管理员登录之后能对账号管理中的增、删、改功能进行操作,而普通用户登录后看不见增、删、改的按钮,因而不能对其进行操作。增、改功能还有对应前台的验证。

当然,本系统仍存在一定不足,如:在项目管理模块中,为项目成员分配具体角色。还应该增加一个模块给员工提出问题反馈意见。

东北大学秦皇岛分校毕业设计(论文) 第 34 页

致 谢

首先感谢我的导师李雅珍老师在毕业设计过程中,从课题的选择、技术上的指导到具体的设计中,指导我阅读相关的资料和书籍,引领我快速入门,在开发的过程中对我的系统给出了一些及时的建议,在这段期间,我始终感受着老师的精心指导,受益匪浅,在此向老师表示深深的感谢。值得一提的是,李老师对学生认真负责,在她身上,我可以感受到一个学者的严谨和务实,这些都让我受益匪浅,并将终身受用。毕竟“经师易得,人师难求”,希望借此机会向陈老师表示最衷心的感谢!

不积跬步,何以至千里,本课题能顺利完成,也归功于大学期间各位任课老师的认真负责,使我能够很好的掌握和运用专业知识。同时还有这四年来一起学习的同学,感谢所有帮助过我的人。

最后,我还要感谢我的父母在物质及精神上给予的支持,他们不仅培养了我对科学文化的浓厚兴趣,让我在漫长的人生旅途中使心里有了明确的目标,而且也为我能够顺利的完成毕业论文提供了巨大的支持和帮助,在未来的日子里,我会更加努力的学习和工作,不辜负父母对我的殷殷期望!我一定会好好的孝敬和报答他们!

东北大学秦皇岛分校毕业设计(论文) 第 35 页

参考文献

[1] 马斗,邱哲,王俊标.JSP开发答疑200问[M].人民邮电出版社,2009:6-12. [2] 李振华,季小虎.Dreamweaver基础教程[M].清华大学出版社,2010:5-20. [3] 柳纯路,刘明亮.信息系统项目管理师教程[M].清华大学出版社,2011:2-15. [4] 任港.Ibatis框架源码剖析[M].电子工业出版社,2010:30-70.

[5] 苏林忠.基于JSP技术的动态WEB开发[M].河南师范大学学报,2008:3-10. [6] 李振捷.JSP网站开发典型模块与实例精讲[M].电子工业出版社,2009:23-38. [7] 李江,张威.实例解析XML/XSL/Java网络教程[M].北京希望电子出版社,2012:510-531.

[8] 庞永庆.JavaScript网页编程从入门到精通[M].科学出版社,2009:5-16. [9] 徐明华.Struts基础与案例开发详解[M].清华大学出版社,2009:34-44. [10] 孟晓峰.数据库系统导论[M].机械工业出版社,2010:7-15.

[11] 叶键毅.精通JavaEE-Eclipse Struts2 Hibernate Spring 整合应用案例[M].人民邮电出版社,2009:33-48.

[12] Gary Mark.Spring攻略[M].人民邮电出版社,2012:3-14. [13] 计文柯.Spring技术内幕[M].机械工业出版社,2010:146-165.

[14] 刘中兵Java研究室.Java高手真经Java Web核心框架[M].电子工业出版社,2009:552-688.

[15] Billington.Oracle PL/SQL实战[M].人民邮电出版社,2012:45-63.

东北大学秦皇岛分校毕业设计(论文) 第 36 页

附 录

附录A

Introduction to database information management system

The database is stored together a collection of the relevant data, the data is structured, non-harmful or unnecessary redundancy, and for a variety of application services, data storage independent of the use of its procedures, insert new data on the database, revised, and the original data can be retrieved by a common and can be controlled manner. When a system in the structure of a number of entirely separate from the database, the system includes a \

Database management system is a manipulation and large-scale database management software is being used to set up, use and maintenance of the database. Its unified database management and control so as to ensure database security and integrity. Database management system users access data in the database, the database administrator through Database management system database maintenance work. It provides a variety of functions, allows multiple applications and users use different methods at the same time or different time to build, modify, and asked whether the database. It allows users to easily manipulate data definition and maintenance of data security and integrity, as well as the multi-user concurrency control and the restoration of the database.

Using the database can bring many benefits: such as reducing data redundancy, thus saving the data storage space; to achieve full sharing of data resources, and so on. In addition, the database technology also provides users with a very simple means to enable users to easily use the preparation of the database applications. Especially in recent years introduced micro-computer relational database management system , intuitive operation, the use of flexible, convenient programming environment to extensive (generally 16 machine, such as IBM / PC / XT, China Great Wall 0520, and other species can run software), data-processing capacity strong. Database in our country are being more and more widely used, will be a powerful tool of economic management.

The database is through the database management system (DBMS-DATA BASE

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

Top