资源预约管理系统设计与应用资源预约学士学位论文.docx
《资源预约管理系统设计与应用资源预约学士学位论文.docx》由会员分享,可在线阅读,更多相关《资源预约管理系统设计与应用资源预约学士学位论文.docx(32页珍藏版)》请在冰豆网上搜索。
资源预约管理系统设计与应用资源预约学士学位论文
北方民族大学
学士学位论文
论文题目:
资源预约管理系统设计与应用(资源预约)
北方名族大学教务处制
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
资源预约管理系统设计与应用(预约模块)
摘要
资源对于一个公司或企业来说就是生命,能否合理有效地利用资源就成为了一个公司或企业能否做大做强的关键。
资源预约管理系统设计与应用这个课题面很广,所以本课题以大家熟知的会议室为缩影来完成本次毕业设计。
会议室作为一个单位或部门的重要资源,其使用是非常频繁的。
当各部门都有重要会议需要召开时,因为各种客观上的原因难免会发生冲突。
为了避免冲突,各部门需要花费大量时间和精力进行预约和协调,但预约困难、协调麻烦等问题往往导致会议室不能充分发挥其应有的作用,造成效率低下,资源浪费,而且也使得会议室管理员的工作负担加大。
因此,在网络化时代的今天,通过网络和现有的技术,研发一套资源预约管理系统对于一个行业的发展是很有必要的。
本论文选择基于Struts的架构来完成可视化会议室资源预约系统。
让相关人员可在网上随时查看预定的情况,无论何时何地都可关注会议室资源的动态情况。
也可以邮件通知预定会议室或取消预定情况,使得会议室资源得到充分地利用。
关键字:
资源预约,JSP,Struts
Thedesignandapplicationofresourcereservationmanagementsystem(reservationmodule)
Abstract
Foracompanyorenterpriseresourceislife,whetherrationalandeffectiveuseofresourcesisacompanyorbusinesscanbecomebiggerandstrongerofthekey.Resourcereservationmanagementsystemdesignandapplicationofthisverybroadtopic,sothisissueknowntoeveryoneasamicrocosmoftheconferenceroomtocompletethisgraduationproject.
Conferenceroomasaunitordepartmentanimportantresource,itsuseisveryfrequent.Whenthedepartmenthasheldanimportantmeetingwhennecessary,duetovariousobjectivereasonswillinevitablyconflict.Toavoidconflicts,alldepartmentsneedtospendalotoftimeandefforttomakeanappointmentandcoordination,buttheappointmentdifficulties,coordinationproblemsandotherproblemsoftenresultinmeetingroomcannotfullyplayitsduerole,resultingininefficiency,wasteofresources,butalsosothattheconferenceroomadministratorworkloadincreased.Therefore,intoday'seraofnetwork,throughtheInternetandexistingtechnologies,researchanddevelopmentofaresourcereservationmanagementsystemforthedevelopmentofanindustryisnecessary.
ThisthesisischosenbasedontheStrutsframeworktocompletevisualizationconferenceroomresourcereservationsystem.Sothatrelevantpersonnelcanalwaysviewonlinebookingsituation,wheneverandwherevertheyareconcernedaboutthedynamicsofmeetingroomresources.Youcanalsoe-mailnotificationschedulemeetingroomsorcancelbookingconditions,makingthemeetingroomresourcesarefullyutilized.
KeyWords:
ResourceReservation,JSP,Struts
1绪论
1.1系统开发背景及意义
通过调查发现,由于现代公司或企业部门众多,会议室资源相对有限。
传统的会议室预约方式存在很大弊端,主要包括缺乏灵活的调换机制,会议室占用信息散播滞后等问题。
因此,设计和开发一套会议室预约系统,实时为用户显示会议室的占用情况,提供灵活高效的预约管理机制,充分利用有限的会议室资源显得十分必要。
1.2论文研究内容
互联网的飞速发展使得人们的工作和生活获得很大的便利,而且,办公自动化的成功应用为消除传统会议室管理方式的弊端提供了解决方案。
本文首先简要阐述了研究开发本系统的背景和意义,对所用到的JSP语言、Struts框架和其他相关技术详细介绍了系统体系结构、系统需求分析,系统整体设计方案及其功能模块的设计和具体实现及测试,最后,对系统的优化方法和实现过程中用到一些关键技术进行了分析与讨论,主要研究如何解决上述矛盾。
1.3论文的组织结构
本文共分7章:
第一章介绍系统开发背景及意义,论文研究内容以及论文的组织结构;
第二章介绍相关理论基础,包括了数据库及相关技术、语言简介;
第三章总体设计包括系统分析、系统开发环境、系统开发方法、系统功能需求、系统非功能需求;
第四章简要介绍系统设计,包括系统功能模块设计、系统体系结构、系统流程;
第五章介绍数据库设计,主要包括数据库设计原则、系统数据表、E-R图和数据字典;
第六章重要实现页面的设计,包括系统首页和具体模块实现、系统查询、预定会议室、添加会议室、修改会议室、会议室的操作等前台页面的实现;
第七章是系统测试,简略介绍了单元测试还有白盒测试和黑盒测试。
2相关理论基础
2.1JSP技术
2.1.1JSP简介
JSP技术使用Java编程语言编写类XML的tags和scriptlets来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与JavaServlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
2.1.2JSP优点
1)一次编写,重复运行。
除了系统之外,代码不用做任何修改。
2)系统的多平台支持。
基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。
相比ASP.NET的局限性是显而易见的。
3)强大的可伸缩性。
从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
4)多样化和功能强大的开发工具支持。
这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
5)支持服务器端组件。
web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。
JSP可以使用成熟的JAVABEANS组件来实现复杂商务功能。
2.2数据库技术及相关技术
2.2.1SQL语言简介
SQL语言是英文Structure QueryLanguge的缩写,是一种数据库专用的结构化查询语言。
SQL语言用来访问和修改数据库的内容。
2.2.3SQLSever简介
SQLServer是一个数据库平台,使用集成的商业智能工具提供了企业级的数据管理。
MicrosoftSQLServer2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,可以构建和管理用于业务的高可用和高性能的数据应用程序。
2.2.4Struts简介
Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。
这个框架之所以叫"Struts",是为了提醒我们记住那些支撑我们房屋,建筑,桥梁,甚至我们踩高跷时候的基础支撑。
这也是一个解释Struts在开发Web应用程序中所扮演的角色的精彩描述。
当建立一个物理建筑时,建筑工程师使用支柱为建筑的每一层提供支持。
同样,软件工程师使用Struts为业务应用的每一层提供支持。
它的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。
我们仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。
如果想混合使用Servlets和JSP的优点来建立可扩展的应用,Struts是一个不错的选择。
相应框架结构如图2-1所示:
图2-1Struts框架图
在上图2-1中,ActionServlet这个类是Struts的核心控制器,负责拦截来自用户的请求。
Action,这个类通常由用户提供,该控制器负责接收来自ActionServlet的请求,并根据该请求调用模型的业务逻辑方法处理请求,并将处理结果返回给JSP页面显示。
2.2.5MyEclipse简介
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错。
3系统分析
3.1系统开发环境
系统开发环境具体要求如下:
1)系统开发平台:
MyEclipse3.4。
2)数据库管理系统:
SQLServer2005。
3)运行平台:
Windows7。
4)Java开发包:
JDK5.0以上。
3.2系统开发方法
考虑实际情况,本系统采用结构化生命周期法进行系统分析和设计,采用瀑布式开发。
瀑布式开发:
开发流程分为需求分析、设计、编码、测试和维护。
瀑布式开发是软件行业开始时普遍采用的开发方式。
瀑布式开发流程适合小型项目快速开发,可以在较短时间内完成项目的开发。
瀑布式开发因为如果在开发流程中需求分析阶段未做好,易造成项目失败,所以在实际开发中已经濒临消失,但是相比较于迭代开发、敏捷开发等开发方式,其开发周期短这一优点仍有可采取性。
项目开发流程如图3-1所示。
图3-1项目开发流程
3.3系统功能需求
3.3.1经济可行性
如今,在信息泛滥的时代,速度就是一切,传统手工的管理系统或电话管理系统都大大降低了人们的工作效率,浪费了人力物力,也跟不上时代的步伐。
相比之下,快速的网络管理系统会给用户带来不一样的冲击感,它不仅可以提高公司的管理效率,也节省了用户的时间,会给公司带来客观的效益。
现有的技术都已近成熟,支持了软件的开发。
3.3.2技术可行性
从硬件方面来看,计算机硬件的更新速度正在不断提高,与此同时,系统的稳定性也在不断加强。
容量越来越大,性能越来越强,而价钱却越来越低。
所以,仅从硬件方面来看,完全能够提供满意的系统开发环境。
从软件方面来看,该资源预约管理系统采用了流行的动态网页设计技术(JSP)和当前流行的B/S(浏览器/服务器)设计模式进行开发。
B/S模式本身是随着Internet技术的兴起,对传统C/S结构的一种变化或者改进结构,具有很多传统结构所不具有的优点。
先进的Internet/Intranet(国际互联网/企业内部互联网)技术,保证了B/S结构的强有力态势,将B/S结构的应用转变成为一种特定时代条件下的大势所趋。
在这个系统的开发过程中,我们可以用JSP语言和MySQL数据库,采用Struts框架。
画图工具用Visio,在Windows7环境下来进行系统开发。
现有的一些开发经验和成熟的设计模型对该系统的设计提供了保障。
3.3.3操作可行性
本系统采用的是简单的用户登陆界面,只要用户输入用户名和正确的密码可以登录主界面,然后进行会议室的预定,修改,查询等操作。
而且界面上面都有明确的操作提示,操作简捷,任何人都可以操作。
有很好的操作性,不存在不懂电脑的人不会操作的情况。
3.3.4开发进度可行性
本系统,一共有两个大模块,一个用户模块,一个管理员模块,计划用时两个月时间完成系统。
以模块化的思想,把系统分割成若干个模块,每五天完成一个模块的设计。
每周星期三给老师检查进度计划,不断完善论文。
在保证论文的质量的前提下按时完成计划。
3.4系统非功能需求
由于本系统的用户多数为非计算机专业人士,对软件的易用性,界面友好性,可靠性要求较高;其次软件应能满足动态的功能变化,因此,设计软件应具有较好的可扩展性。
在实现项目管理系统的功能的同时,系统的非功能需求如下:
1)界面友好,操作简单,帮您轻松上手;
2)系统安全可靠;
3)增加系统的可复用性,软件具有较好的可扩展性。
4系统设计
4.1系统功能模块设计
本会议室预定系统可大致分为以下两个大模块。
具体的描述如下:
1)用户模块:
包括用户登录,会议室预定,预订信息修改,会议室信息查询,退订会议室。
2)管理员模块:
管理用户信息,会议室信息管理,通知用户。
其中,会议室信息管理又包含三个模块,分别是会议室信息查询,会议室信息修改,会议室信息删除。
系统的具体功能模块图见图4-1所示:
图4-1系统功能模块图
4.2系统体系结构
体系结构如下图4-2所示:
图4-2体系结构图
客户通过浏览器客户端发送HTTP请求到控制器(ActionServlet),控制器通过逻辑判断,一部分发送到视图界面,需要进行逻辑判断的通过ActionForm发送到商业逻辑(Action),商业逻辑转化成模型程序状态返回给视图JSP,再通过HTTP应答返回给浏览器界面,完成一个流程。
5数据库设计
5.1数据库设计原则
数据库设计原则主要包括以下内容:
1)发现领域中的概念,清理领域中的概念,将其映射成表。
2)尽量遵循数据库设计范式:
第一范式,有主键,具有原子性,列不可分割;第二范式:
消除非主属性的部分函数依赖;第三范式:
消除传递依赖。
3)根据具体情况考虑合理添加冗余的字段。
4)如果数据量非常庞大,并且频繁使用相关字段的查询,最好建立索引。
5.2系统数据表
根据系统的功能分析和E-R图可以设计如下所示的数据库中的表。
数据库采用MySQL,调试、运行程序前必须先在MySQL服务器上建立一个数据库。
下面集中给出了与该网上会议室预定系统相关的各个数据表的详细结构。
1)用户信息表
该表反映了有关用户的信息,便于了解有关用户情况。
一共包含六个属性,如表5-1所示:
表5-1用户信息表
序号
字段名
类型
长度
允许空
主键
说明
1
UID
int
20
否
是
用户编码
2
UTime
varchar
50
否
否
使用时间
3
UName
varchar
50
否
否
用户名称
4
UTel
varchar
50
否
否
联系方式
5
UEmail
varchar
50
是
否
邮箱
6
BID
Int
20
否
否
会议室编号
2)管理员信息表
该表反映了有关管理员的信息,便于了解有关管理员情况。
一共包含两个属性,如表5-2所示:
表5-2管理员信息表
序号
字段名
类型
长度
允许空
主键
说明
1
Nmane
varchar
10
否
否
管理员姓名
2
MpassWord
varchar
10
否
否
密码
3)会议室信息表
该表反映了有关会议室的信息,便于了解有关会议室情况。
主要包含六个属性,如表3-7所示:
表5-3会议室信息表
序号
字段名
类型
长度
允许空
主键
说明
1
BID
int
20
否
是
会议室编号
2
BWhere
varchar
50
否
否
会议室地点
3
BCatain
Int
50
否
否
容量
4
BState
varchar
50
否
否
状态
5
BstartTime
datetime
50
是
否
开始时间
6
BendTime
datetime
20
是
否
结束时间
7
Bdetail
varchar
1204
是
否
会议内容
5.3E-R图
根据需求分析进行初步设计可以画出本系统实体间关系的E-R图,该系统涉及三个实体,分别为用户,管理员和会议室信息。
E-R图如图5-4所示如下:
图5-4系统总E-R图
5.4数据字典
系统总数据流图如下图5-6所示:
图5-6系统总数据流图
一个完整的系统离不开数据库,对数据库的合理设计有助于系统的运行流畅,后台操作方便,后期维护也容易一些。
而数据字典又是数据库的核心。
以下是一些数据字典的描述和数据库的设计。
表是对各数据元素的详细说明。
系统中使用的所有数据元素的定义的集合如下:
1)主要的数据流
(1)数据流名称:
用户情况
位置:
用户—>P1,用户—>P2,用户—>P3
定义:
用户情况=用户编号+用户登录名+登录密码+联系方式+E-MAIL
说明:
用户登录该系统时,系统会存储用户的一些基本信息。
(2)数据流名称:
会议室情况
位置:
会议室—>会议室信息
定义:
会议室情况=会议室编号+会议室位置+可容人数+价格+状态
说明:
向用户提供会议室信息。
2)主要的数据存储定义
(1)数据存储名称:
预订信息
输入:
P1,P2
输出:
P4
数据结构:
用户编号+用户名+会议室编号+预定日期+使用时间+联系方式+E-MAIL
说明:
用户进行预订操作后,系统会根据用户登录时的信息以及预定会议室的信息生成预定信息。
(2)数据存储名称:
会议室信息
输入:
会议室
输出:
P3,P4
数据结构:
会议室编号+会议室位置+可容人数+价格+状态
说明:
管理员根据会议室信息和预订信息来确定可预定会议室的信息。
3)主要处理过程
(1)处理过程编号P1
处理过程名:
预定处理
输入:
用户情况
输出:
预订信息
处理说明:
用户进行预订会议室操作。
(2)处理过程编号P2
处理过程名:
修改处理
输入:
用户情况
输出:
预定处理
处理说明:
用户对自己已预定的会议室做修改。
(3)处理过程编号P3
处理过程名:
查询处理
输入:
用户情况,会议室信息
输出:
用户
处理说明:
用户查询可供预定的会议室
(4)处理过程编号P4
处理过程名:
后台数据管理处理
输入:
预订信息,会议室信息,管理员情况
输出:
管理员
处理说明:
管理员修改会议室的状态,使已被预订的会议室状态改变。
(5)处理过程编号P5
处理过程名:
通知客户处理
输入:
预订信息,管理员
输出:
用户
处理说明:
管理员根据用户的预定信息,制作代表证等通知用户,
(6)处理过程编号P6
处理过程名称:
管理
输入:
P6
输出:
会议室使用情况
处理说明:
管理员查看会议室的使用情况,对其进行相关管理。
6详细设计及实现
6.1系统首页
登录界面的设计应该简洁大方。
本系统登录界面有用户名和密码,两个输入框,另外再加两个按钮,分别是登录与注册。
并且添加了一个美观的背景图片。
在登录系统时,只有用户名和密码都输入正确时才能登录该系统。
当用户名和密码为空或者有一个为空时,在点击登录按钮后系统提示“您的用户名或密码为空,请重新输入”。
登录成功后才能跳转到主界面。
若用户还没有注册系统时,必须先注册,输入有效的用户名和密码,点解注册按钮,即可完成系统注册。
界面如下图6-1所示:
图6-1登录界面
主要代码如下:
<%Stringmysqldriver="com.mysql.jdbc.Driver";
St