Struts航空订票系统-课程设计报告.docx

上传人:枫** 文档编号:563923509 上传时间:2022-12-05 格式:DOCX 页数:24 大小:375.28KB
返回 下载 相关 举报
Struts航空订票系统-课程设计报告.docx_第1页
第1页 / 共24页
Struts航空订票系统-课程设计报告.docx_第2页
第2页 / 共24页
Struts航空订票系统-课程设计报告.docx_第3页
第3页 / 共24页
Struts航空订票系统-课程设计报告.docx_第4页
第4页 / 共24页
Struts航空订票系统-课程设计报告.docx_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《Struts航空订票系统-课程设计报告.docx》由会员分享,可在线阅读,更多相关《Struts航空订票系统-课程设计报告.docx(24页珍藏版)》请在金锄头文库上搜索。

1、摘要随着社会发展的不断进步,民航事业的壮大,人均消费水平的提高,航空运输业现在已经成为我国运输事业的重要方式之一。但由于航空运输的特殊性。很容易受到天气和人为因素的影响。从而给旅客及时获取航班信息。及时准确的预定机票和退订机票带来了极大的不便。针对以上的问题,可以通过建立一套完善的航空公司订票系统,来公布航班信息、查询航班信息、预订机票、退订机票等操作,从而使旅客能够及时准确获得自己需要的信息或进行查询、订票、退票等操作。航空订票系统是为机场工作人员及旅客提供订票、退订等与机票相关的内容和管理的系统,它分为前台和后台两个部分。前台主要提供了航班的查询机票的预定与退订等功能。后台是管理员管理界面

2、只有管理员才能进行操作。包括查看机票预订情况,对航班信息进行增、删、改、查。对用户信息进行增、删、改、查,添加、删除、修改、公布信息的操作。本系统采用MyEclipse 2014作为软件开发的环境,以Tomcat 6.0作为Web服务器,后台的数据库是使用MySql 5.0。使用Microsoft公司的win8系统作为开发的系统,运用Struts2+Spring 3.0+Hibernate整合开发,从界面友好,功能实用的要求出发。开发一个利用Web技术发布在网络上的基于B/S模式的航空订票系统。关键词:航空订票系统;Struts2+Spring3.0+Hibernate;JSP+jQuery+

3、ExtJSB/S结构;一、绪论1.1.课题背景及现状随着社会发展的不断进步,人均收入的不断增高,使得越来越多的人将目光放在了提高生活质量上。因此,旅游在人们的生活中占有越来越重要的地位。而且人们选择出行的方式也越来越多元化,其中飞机所占的比重越来越高。信息化是当今世界经济和社会发展的大趋势,也是我国产业优化升级和实现工业化、现代化的关键环节,大力推进国民经济和社会信息化,是覆盖现代化建设全局的战略举措,可见,这是民航快速发展的机遇,更是民航信息化的机遇。航空公司伴随着业务的增长,不断增长的信息量,落后的工作效率和管理水平也带来了很多的问题。老套的人工售票方式已经无法满足人们的需求,严重的制约了

4、工作效率。在计算技术及电子商务高速发展的今天,有必要引入高效的计算机系统来处理航班查询、机票预订、信息管理的工作。因此,开发一套具有航班查询、机票预订与退订、航班信息管理、客户信息管理的系统已经是势在必行。1.2.选题意义航空订票系统是为机场工作人员及客户提供订票退票等与机票相关内容和管理的系统,它具有开放体系结构、易扩充、易维护、具有良好的人机界面的优点。它除了克服存储乘客信息少,查询效率低下等问题外,更重要的是其安全、可靠,实现航空公司的机票销售的自动化。他还为企业的决策层提供准确、精细、迅速的机票销售信息,便于机场工作人员对机票信息进行管理,提高机场工作人员的工作效率。1.3.系统开发工

5、具与技术介绍1.3.1.开发环境开发本系统所需要用到的软件环境如下:(1) JDK: JDK1.7.0_51版本是目前功能比较全、比较稳定的版本,其新添加了许多以前版本所不具备的新特性,如整合脚本语言、自动打包解包、安全性等功能。(2) Web应用服务器:Tomcat6.0服务器功能强大、方便易用,适用于中小型系统的开发服务器,同时Tomcat可以从网上免费下载,从而降低了开发成本。(3) Database数据库:MySQL5.0数据库是目前小型应用开发中比较流行的数据库,且其从MySQL5.0版本开始支持事务,保证了数据库的完整性和安全性。(4)MyEclipse2014开发IDE:利用My

6、Eclipse2014的集成开发环境,我们可以在整合Struts2+Spring3.0+Hiberbate开发项目时极大地提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能。1.3.2.开发模式简介本系统采用B/S(浏览器/服务器)架构,在这种结构下,客户机上只需要装有一个浏览器(Browser),用户就可以通过WWW浏览器来访问服务器上的内容,在通用浏览器端就实现了原来需要复杂专用软件才能实现的强大功能,大大节约了开发成本,是一种全新的软件系统的构造技术。1.3.3.开发技术本系统采用MyEclipse 2014作为软件开发的环境,以Tomcat 6

7、.0作为Web服务器,后台的数据库是使用MySql 5.0。使用Microsoft公司的win8系统作为开发的系统,后台运用Struts2+Spring 3.0+Hibernate整合开发,前台视图层使用JSP+jQueryJS+ExtJS+CSS开发。从界面友好,功能实用的要求出发,开发一个利用Web技术发布在网络上的基于B/S模式的航空订票系统。二、需求分析与总体设计2.1.功能需求作为一个机票预订系统,在设计时,首先要充分考虑到问题的可行性,根据机票预订的目前的情况,还有已有的经济可行性,技术可行性,社会可行性三方面,分析机票预订系统具有的可行性。其次是听取用户的需求,首先要对销售机票站

8、点,航空公司进行业务分析,在分析已有系统的基础上,对本系统进行充分分析,针对用户需求做出具体实施方案,对系统实现的功能、性能、系统要求的运行环境提出完整、准确、清晰、具体的要求。机票预订系统应该考虑以下几方面的需求:首先是旅客用户方面的需求:用户需要能够查询航班信息情况,通过输入起始地址与目的地址还有指定的日期查找所有的航班,采取一些排序功能让用户很轻松的找到所需要的航班;用户查看完航班信息后,可以选择进行预订机票,通过已有的网上银行进行付款,并且查看机票预订后的订单,还有相应的机票;用户可以进行退票,通过查看相应的机票进行退票,将相应的退票后的钱打到用户的帐里;用户还可以进行改签,通过查看相

9、应的机票,选择新的航班完成改签功能,如果是升舱还需要补交差价。其次是机场工作人员方面的需求:机场工作人员需要对机场信息,航线信息,飞机信息进行维护,还要将上述信息进行汇总总结,从而产生对应的航班;对外发布航班的各种信息,与航班的各种动态变化;机场工作人员可以查看最近的机票销售情况,航班变动情况以及账务情况,以便对后续工作进行归纳总结。最后是安全性的需求:由于系统涉及到人员信息以及财务问题,所以必须要有很好的安全性保障,通过给每个使用系统的人设置用户名以及密码等检验功能,增强系统的安全性,用户只有登录系统才能有相应更多的功能权限。由此,可得出预定机票模块的功能模块图:图2-1 航班订票系统功能模

10、块图2.2.业务需求航班订票系统首先面向的是经常乘坐飞机的用户。这些用户首先需要在本网站注册一个账号,账号中需要添加联系人,这些联系人在购买机票时,作为乘客的身份出现。当用户点击购买机票后,系统会自动判断此用户是否处在登陆状态,如果用户没有登录,系统拦截器会自动将程序转向登陆界面提示用户登陆。当用户登陆成功后,用户选择机票类型,用户点击提交订单,首先后台会验证选择的联系人在选择的订票日期有没有未处理或者已支付的订单,若有,会提示用户不能重复购买,否者,系统会再次验证用户购买的机票数量是否足够,若足够,则系统分配机票算法会为乘客分配合适的机票,向机票订单表中插入一条数据,修改机票座位信息表中的座

11、位信息,并返回json字符串提示给用户,显示某联系人已购买成功某个座位的机票;若不足够则返回机票数量不足,提示用户重新选择机票座位。以下是项目核心功能预订机票的程序流程图:图2-2 机票预定程序流程图2.3.用例分析用例:查询机票 预定机票 支付机票 退订机票参与者:航空公司用户(乘客)主事件流:(1) 用户登录本机票预定系统(2) 用户输入出发地,目的地和乘机日期查询机票剩余情况(3) 用户选择航班,选择联系人,并为每个联系人选择所需座位舱段,提交订单(4) 系统判断联系人是否重复购买,机票是否足量,若联系人没有重复购买,机票足量,则为用户分配机票,购买成功,否则不成功。如下是由用例事件流得

12、出的用例图:图2-3 航班预定系统用例图2.4.预定机票时序图本系统使用MVC模式,利用Struts2+Spring3.0+Hibernate框架技术编写,所以系统总体架构分为三层,呈现给用户的是视图层View层,主要以JSP页面实现,负责将后台传来的所有数据组织起来,并按一定的样式显示给用户;第二层是控制层Controller层,以Struts2中的Action实现,主要负责将前台传来的数据进行预处理,并传递给Service层或者将Service层处理数据得到的结果传递到前台View层;第三层是Service层,通过自定义的java业务逻辑处理类来实现,主要负责处理业务逻辑,该系统的所有核心

13、代码都在此层中,其中包括验证用户是否重复购买,机票是否足量,为用户分配机票座位,支付机票,以及取消机票订单等;第四层是JDBC层,通过Hibernate实现。当用户点击预定机票后,系统会根据前台传进的参数查询机票信息,并传递到jsp页面显示给用户,当用户选择某个航班后,会查看机票情况,当用户选择机票后,会将订票信息传递到后台业务逻辑层进行数据处理,如果用户不存在重复购买,且机票余票充足,则订票可以成功,否则,提示用户订票失败。图2-4 机票预定时序图图2-5 支付机票时序图三、数据库设计3.1.数据库概念设计图3-1数据库设计步骤示意图数据库的概念结构设计是通过对现实世界中信息实体的收集、分类

14、、聚集和概括等处理,建立数据库概念结构(也称为概念模型)的过程。概念结构的设计策略主要有自顶向下、自底向上、自内向外和混合策略四种。自顶向下就是先从整体给出概念结构的总体框架再逐步细化;自底向上就是先给出局部概念结构再进行全局集成;自内向外就是先给出核心部分的概念结构再逐步扩充;混合策略是自顶向下方法与自底向上方法的结合。3.1.1.数据库概念设计过程根据机票预定系统的特点,可以总结出有如下几个实体:航线,客机,航班,用户,乘客,订单等实体,各个实体之间的联系如下所述: (1)一条航线上可以有多架客机飞行,一架飞机可以飞行多条航线,所以航线和客机是多对多的联系。 (2)一条航线被多个航班使用,

15、一个航班有一条航线,所以航线与航班之间是一对多的联系。 (3)一个航班有一个航班经理,一个航班经理可以负责多个航班,所以航班和航班经理是一对多的联系。3.1.2.生成E-R图图3-2生成航班E-R图3.2.数据库逻辑结构设计在关系数据库中,数据库的逻辑设计就是根据概念模型设计的E-R图,按照E-R图到关系数据模型的转换规则,将E-R图转换成关系模型的过程,即将所有的实体和联系转化为一系列的关系模式的过程。3.2.1.关系模式由E-R图可以得到如下的关系模式以及范式规范说明:(1) 航线(航线编号,航程,起飞机场,降落机场,基准票价,航线宽度,航线高度) 主键:航线编号 函数依赖航线编号-其他所有属性由函数依赖可知,依赖左端为候选码,所以航线关系模式属于BCNF (2) 客机(客机编号,飞机类型,最大航程,飞机状态) 主键:客机编号 函数依赖(客机编号)-其他所有属性 由函数依赖可知,依赖左端为候选码,所以客机关系模式属于BCNF (3) 航班(航班编号,客机编号,航线编号,起飞时间,降落时间,航班班期,航班经理,航班状态) 主键:航班编号 外键:航线编号,客机编号 函数依赖(航班号)-其他所有属性,(航线号,客机编号)-其他属性 由函数依赖可知,候选码为:航班号,(航线号,客机编号)。由于函数依赖左端都为候选码

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 商业合同/协议

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号