航空订票管理系统.docx
《航空订票管理系统.docx》由会员分享,可在线阅读,更多相关《航空订票管理系统.docx(27页珍藏版)》请在冰豆网上搜索。
航空订票管理系统
大连民族大学本科毕业设计(论文)
航空订票管理系统的实现与设计
学院:
计算机科学与工程
(系)专业:
网络工程
学生姓名:
员晨绮
学号:
**********
********
评阅教师:
完成日期:
2016年5月30
大连民族大学
摘要
当前中国民航市场扩大迅速,随着生活水平的提高,越来越多的人选择飞机出行,对航空公司的服务要求的越来越高,为了适应快速发展的需求,管理大量数据,有效地稳定的管理航空公司,我们要为某航空公司开发一套国内机票售票系统,要求能通过分布在全国各主要城市的该航空公司的营业网点为顾客提供航班查询,购买机票以及退票的服务。
通过航空订票管理系统这个平台,可以实现人员航班及客户订票的信息化、网络化、系统化、规范化管理,从繁杂的数据查询和统计中解脱出来,更好的掌握人员票务状况。
系统的主要功能包括:
客户信息管理、航班管理与订单信息管理。
本系统前台主要使用JSP作为开发语言,后台使用SqlServer作为数据库管理系统,开发环境是MyEclipse,服务器采用tomcat,开发出的一个基于Web技术的B/S结构的铝窗设计管理系统。
关键词:
民用航空,管理系统,JSP,B/S结构
ABSTRACT
ThecurrentChineseaviationmarkettoexpandrapidly,alongwiththeimprovementoflivingstandard,moreandmorepeoplechoosetoairtravel,airlineservicerequestmoreandmorehigh,inordertoadapttotherapiddevelopmentneeds,datamanagement,effectiveandstablemanagementoftheairline,weneedtodevelopasetofdomesticairlineticketbookingsystem,requirementsthroughdistributedinthemaincityoftheairline'sbusinessoutletsforcustomerstoprovideflightinformation,purchaseticketsandticketservice.
Throughtheairbookingmanagementsystemthisplatform,canachievepersonnelflightsandcustomersbookinginformation,network,systematic,standardizedmanagement,fromthecomplexdataqueryandstatisticsinrelief,bettergraspthepersonnelticketcondition.Themainfunctionsofthesysteminclude:
customerinformationmanagement,flightmanagementandorderinformationmanagement.
ThefrontofthesystemusingJSPasadevelopmentlanguage,theuseofSqlServerasadatabasemanagementsystem,thedevelopmentenvironmentisMyEclipse,serverusingtomcat,developedaWebtechnologybasedonB/Sstructurewindowsdesignmanagementsystem.
Keywords:
civilaviation,managementsystem,JSP,B/Sstructure
1绪论
1.1课题背景
根据计划,中国民用航空工业“十一五”期间将在以下5个方面取得积极进展:
重点民用航空产品;加快民用航空产业化进程;增强民用航空科研生产能力;增强民用航空工业的自主创新能力;履行政府职能,进一步加强行业管理。
在“十一五”期间,中国将投入约1400亿元人民币用于机场建设。
这将为民航业的发展创造有利条件。
预计2006年至2010年间,中国民航航空运输总周转量年均增长保持在14%左右,2010年民航运输飞机将达到1550架,年均增长12%。
本文从计算机信息环境下,订票电子化管理与服务特点、订票电子化与服务措施、订票订单信息服务应注意的问题等方面进行考虑,构建一套完整的航空订票电子化管理系统。
1.2目的和意义
在信息技术还不是十分发达的时代,人们在要旅行的时,必须到车站或是机场的售票处临时买票,或者提前好几大到离居住地很远的地方事先将票买好。
在这种睛况下人们不知道是否能按预期买到票。
在旅行旺季的时候,有时耽误了大量的时间也没将票买好,给人们的出行带来了很大的不便。
随着信息技术的日趋成熟,订票业务随之产生。
现在,人们如果要外出旅行,可以提前将机票预订好。
而且更为方便的是,人们不必亲自到机场买票,因为很多地方都提供订票业务,比如旅馆,各地的售票点等。
另外,人们还可以选择是否要求将票送到自己手中,甚至要求在出行时将自己送至机场。
这大大方便了人们的外出旅游和工作,提高了服务质量和效率。
1.3开发工具及技术
1.3.1开发工具
此次设计主要采用MyEclipse加Tomcat后台服务器进行,设计过程中页面主要使用JSP技术完成,下面对MyEclipse、Tomcat和SqlServer数据库进行简要介绍。
1.3.1.1MyEclipse
MyEclipse,是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。
1.3.2JSP
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与Servlet一样,是在服务器端执行的,通常返回给客户端就是一个HTML文本,因此客户端只要有浏览器能浏览。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
JSP技术的优点:
(1)一次编写,到处运行。
除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。
基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。
相比ASP/.net的局限性是显而易见的。
(3)强大的可伸缩性。
从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。
Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下
(5)支持服务器端组件。
web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。
JSP可以使用成熟的JAVABEANS组件来实现复杂商务功能。
内部对象说明:
request客户端请求,此请求会包含来自GET/POST请求的参数;response 网页传回客户端的响应;pageContext网页的属性是在这里管理;session与请求有关的会话;applicationservlet正在执行的内容;out用来传送响应的输出流;config 代码片段配置对象;page JSP网页本身;exception 针对错误网页,未捕捉的例外
2需求分析
2.1需求调研
在项目的开始是需求调研,并且走访了一些小型航空票务代售点,经过一系列的调查与谈话中发现,了解了该行业的业务功能及操作流程。
根据实际情况及调查结果,发现实现航空订票信息的网络化、信息化是十分有必要的,因此设计了航空订票管理系统。
2.2可行性分析
开发任何一个系统,都会受到时间和资源上的限制。
因此,在每一个项目开发之前,都要进行可行性分析,可以减少项目的开发风险,避免人力、物力和财力的浪费。
下面就技术、经济、操作和法律四个方面来介绍。
2.2.1技术的可行性
本系统开发工具是MyEclipse和SqlServer数据库,开发语言是Java,主要使用了J2EE的技术,java是一种面向对象编程语言,简单易学而且灵活方便。
大三时就学习了java课程,大四期间也系统的了解了J2EE的知识,铝窗设计管理系统总体上开发难度不高,数据库的设计和操作是本系统设计的核心。
在大学期间学习过软件工程,软件测试,UML统一建模语言等课程,每个学期也会完成对应的课程设计,具备一定的系统分析、设计和测试能力。
因此,完成系统实现在技术上完全具有可行性。
2.2.2经济的可行性
如今是信息化时代,信息化管理可以使航空订票工作更加系统化、快速化、全面化。
这样可以为企业带来较高的工作效益和经济效益,本系统对计算机配置的要求不高,企业机房更换下来的低配置电脑都可以完全满足需要,再者,企业在管理工作上的高效率和便捷性远远超过了开发本系统的成本,所以在经济上具有完全的可行性。
2.2.3操作可行性
本系统操作简单,输入信息页面大多数都是下拉框的选择形式,在某些页面,信息可以自动生成,无需输入,时间的输入也是用的日历控件,操作简便,对操作人员的要求很低,只需对WINDOWS操作熟练,加之对本系统的操作稍加培训即可工作,而且本系统可视性非常好,所以在技术上不会有很大难度。
2.3系统用户用例图
2.3.1管理员用例图
管理员是系统的核心用户,涉及到三大功能模块,管理员对系统的所有客户信息、航班信息、订单信息有着操作的权限。
图2.1管理员用例图
2.4功能模块需求分析
本系统最大的特点是使用操作简单、友好的提示信息。
本系统将实现以下基本功能:
(1)系统具有简洁大方的页面,使用简便,友好的错误操作提示
(2)管理员用户具有客户信息管理、航班信息管理、订单信息管理功能
(3)具有较强的安全性,避免用户的恶意操作
管理员功能模块图说明:
管理员是功能最多的一种用户角色。
(1)客户管理模块:
在该模块中完成客户管理功能。
客户信息管理提供客户的查询、增加、修改和删除等功能操作。
(2)航班管理模块:
在该模块中定义了对航班信息的管理,其功能包括航班录入、查询、修改、删除等操作。
(3)订单管理模块:
在该模块中定义了对订单信息的管理,其功能包括订单信息录入、查询、修改、删除等操作。
图2.2管理员用户功能模块图
2.5设计的基本思想
设计思想遵循以下几点:
1.采用B/S模式进行开发,其优点是后台与前台处理层次分明,而且符合众多已经习惯网页方式的用户。
2.采用面向对象的开发与设计理念。
运用面向对象技术的前提是对整体系统的高度和准确抽象,通过它可以保证系统良好的框架,进而带来产品较强的稳定性和运行效率。
3.采用模块化设计。
模块化设计要求将整个系统划分成基于小的模块,有利于代码的重载,简化设计和实现过程。
4.简单方便的系统界面。
设计简单友好的系统界面,方便用户较快的适应系统的操作。
5.速度优先原则。
由于此工具最重要的评测标准就是速度,因此在设计过程中,具体过程尽量做到资源占用少,速度快。
6.设计既要突出重点,又要细致周到。
要符合设计需求,在有可能改进的地方进行扩充,使系统更适应用户的需要。
2.6性能需求
2.6.1系统的安全性
航空订票管理系统在管理权限上要严格进行控制,具体要求如下:
想登录航空订票管理系统进行操作,必须有操作权限,没有权限的用户不能通过任何方式登录系统查看系统的任何信息和数据,以确保系统的严密性和安全性。
2.7界面需求
界面设计目前已经成为评价软件质量的一条重要指标,一个好的用户界面可以增加用户使用系统的信心和兴趣,提高工作效率,JSP技术是用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。
创建动态页面非常方便。
用户界面是指软件系统与用户交互的接口,通常包括输出、输入、人-机对话的界面格式等。
1.输出设计
输出是由计算机对输入的原始信息进行加工处理,形成高质量的有效信息,并使之具有一定的格式,提供管理者使用,这是输出设计的主要职责和目标。
系统设计的过程正好和实施过程相反,并不是从输入设计到输出设计,而是从输出设计到输入设计,这是因为输出表格直接与使用者相联系,设计的出发点应当是保证输出表格方便地为使用者服务,正确及时反映和组成用于各部门的有用信息。
输出设计的原则是考虑既要全面反映不同管理层的各项需要,又要言简意赅,不要将用户需要和不需要的都提供给用户。
2.输入设计
输入数据的收集和录入是比较费事的,需要大量的人力和一定设备,并且容易出错。
如果输入系统的数据有错误,则处理后的输出将扩大这些错误,因此输入数据的正确性对于整个系统质量的好坏是具有决定性意义的。
输入设计的原则有如下几点:
1)输入量应保持在能满足处理要求的最低限度。
设计中可采用设置字段初值,下拉式数据窗口等方式尽量减少用户键盘输入量。
输入量越少,错误率就越少,数据准备时间也减少。
2)输入的准备及输入过程应尽量容易进行,从而减少错误的发生。
3)应尽量早对输入数据进行检查(尽量接近原数据发生点),以便使错误及时得到更正。
4)输入数据尽早地用其处理所需的形式被记录,以避免数据由一种介质转移到另一种介质时需要转录而可能发生的错误
3系统分析与设计
3.1数据库的分析与设计
计算机信息系统以数据库为核心,在数据库管理系统的支持下,进行信息的收集、整理、存储、检索、更新、加工、统计和传播等操作。
数据库已经成为现在信息系统等计算机系统的基础与核心部分。
数据库设计的好坏直接影响到整个系统的质量和效率。
数据库的设计一般经过规划。
需求分析、概念设计、逻辑设计、物理设计5个步骤。
3.1.1数据库的概念结构设计
概念设计是指在数据分析的基础上自底向上的建立整个系统的数据库概念结构,从用户的角度进行视图设计,然后将视图集成,最后对集成的结构分析优化得到最后结果。
数据库的概念结构设计采用实体—联系(E-R)模型设计方法。
E-R模型法的组成元素有:
实体、属性、联系,E-R模型用E-R图表示,是提示用户工作环境中所涉及的事物,属性则是对实体特性的描述。
概念设计的目标是产生反映企业组织信息要求的数据库概念结构,即概念模式。
概念模式是独立于数据库逻辑结构,独立于支持数据库的DBMS,不依赖于计算机系统的,
根据以上对数据库的需求分析,并结合系统概念模型的特点及建立方法,建立E-R模型图。
(1)客户信息实体E-R图如图3.1所示:
图3.1客户信息实体E-R图
(2)航班信息实体E-R图如图3.2所示
图3.2航班信息实体E-R图
(3)订单信息E-R图如图3.3所示
图3.3订单信息实体E-R图
(4)管理员信息E-R图如图3.4所示
图3.4管理员信息实体E-R图
表3.1客户信息表(t_kehu)
列名
数据类型
长度
允许空
是否主键
说明
id
int
4
否
是
编号
xingming
varchar
50
否
否
姓名
xingbie
varchar
50
否
否
性别
shenfenzheng
varchar
50
否
否
身份证
dianhua
varchar
50
否
否
联系方式
email
varchar
50
否
否
电子邮箱
(2)航班信息表主要是记录了航班的基本信息,表结构如图3.2所示。
表3.2航班信息表(t_hangban)
列名
数据类型
长度
允许空
是否主键
说明
id
Int
4
否
是
编号
bianhao
varchar
50
否
否
航班编号
qidian
varchar
50
否
否
起点
zhongdian
varchar
50
否
否
终点
gongsi
varchar
50
否
否
航空公司
juli
varchar
50
否
否
飞行距离
shijian
varchar
50
否
否
飞行时间
jixing
varchar
50
否
否
机型
(3)订单信息表主要是记录订票订单的基本信息,表结构如图3.3所示。
表3.3订单信息表(t_dingdan)
列名
数据类型
长度
允许空
是否主键
说明
id
Int
4
否
是
编号
bianhao
varchar
50
否
否
订单编号
khid
Int
4
否
否
客户信息
hbid
Int
4
否
否
航班信息
riqi
varchar
50
否
否
出行日期
leixing
varchar
50
否
否
机票类型
zhangshu
varchar
50
否
否
购买张数
feiyong
varchar
50
否
否
费用
(4)管理员信息表主要记录的管理员的账号信息,包括用户名和密码,表结构如表3.4所示。
表3.4管理员信息表(t_admin)
列名
数据类型
长度
允许空
是否主键
说明
userId
int
4
否
是
编号
userName
varchar
50
否
否
用户名
userPw
varchar
50
否
否
密码
4系统功能实现
在管理信息系统的生命周期中,经过了需求分析、系统设计等阶段之后,便开始了系统实施阶段。
在系统分析和设计阶段,系统开发工作主要是集中在逻辑、功能和技术设计上,系统实施阶段要继承此前面各个阶段的工作成果,将技术设计转化为物理实现,因此系统实施的成果是系统分析和设计阶段的结晶。
4.1系统登陆页面实现
1.描述:
为了保证系统的安全性,要先使用本系统必须先登陆到系统中,用户需要正确的账号和密码登录本系统。
2.程序运行效果图如图4.1所示:
图4.1系统登陆页面设计
3.在登陆页面输入用户名和密码以,点击提交按钮,跳转到登陆的service中,在该service中会对用户名,密码,验证码进行判断,验证通过进入对应的页面,
4.2总体功能模块
1.描述:
系统主页面:
左方页面展示了管理员可操作的三大功能,进入相关的管理页面可以链接到子菜单,并且高亮显示,每个管理模块下面都有相应的子菜单。
2.程序运行效果图如图4.2所示:
图4.2管理员主页面
在每个jsp页面将会对相关用户进行拦截操作,这样可以提高安全性,防止用户不经过登陆页面而进入任何子菜单页面:
if(session.getAttribute("user")==null)
{
out.print("");
}
4.2.1客户信息管理
4.2.1.1客户信息录入
1.描述:
管理员输入客户信息相关正确信息后点击录入按钮,如果是没有输入完整的客户信息,都会给出相应的错误提示,不能录入成功。
输入数据都通过form表单中定义的方法onsubmit="returncheckForm()"来检查,checkForm()函数中是各种的校验输入数据的方式。
2.程序效果图如下图4.3所示:
图4.3客户信息录入
3.流程图如下图4.4所示:
图4.4客户信息录入流程图
4.2.1.2客户信息管理
1.描述:
管理员点击左侧的菜单“客户管理”,页面跳转到客户信息管理界面,调用后台的action类查询出所有的客户信息,并把这些信息封转到数据集合List中,绑定到request对象,然后页面跳转到相应的jsp,显示出客户信息。
2.程序效果图如下图4.5所示
图4.5客户信息管理
4.2.1.3客户信息修改
1.描述:
先是点击客户管理,页面跳转到客户信息管理界面,浏览所有的客户信息,点击要修改的客户信息,跳转到客户信息修改页面修改该条客户信息。
2.程序效果图如下图4.6所示
图4.6客户信息修改界面
4.2.1.4客户信息删除
1.描述:
先是点击客户管理,页面跳转到客户信息管理界面,浏览所有的客户信息,点击要删除的客户信息,弹出的确定对话框,即可删除该客户信息。
2.程序效果图如下图4.7所示
图4.7客户信息删除
4.2.2航班信息管理
4.2.2.1航班信息录入
1.描述:
管理员输入航班信息相关正确信息后点击录入按钮,如果是没有输入完整的航班信息,都会给出相应的错误提示,不能录入成功。
输入数据都通过form表单中定义的方法onsubmit="returncheckForm()"来检查,checkForm()函数中是各种的校验输入数据的方式。
2.程序效果图如下图4.8所示:
图4.8航班信息录入
4.2.2.2航班信息管理
1.描述:
管理员点击左侧的菜单“航班管理”,页面跳转到航班信息管理界面,调用后台的action类查询出所有的航班信息,并把这些信息封转到数据集合List中,绑定到request对象,然后页面跳转到相应的jsp,显示出航班信息。
2.程序效果图如下图4.9所示
图4.9航班信息