1、第 1 页 (共 21 页)本科毕业论文(20 届)民航售票管理系统前台界面设计 所在学院专业班级 信息与计算科学学生姓名指导教师完成日期第 2 页 共 21 页民航售票管理系统前台界面设计 摘 要:随着信息技术日渐成熟,计算机管理的功能已为人们深刻认识,它已在人类社会的各个领域发挥着越来越重要的作用 尤其在航天管理领域。本文按照软件工程的结构化设计思想,经过项目的可行性研究和需求分析,总体设计,详细设计,以及编码实现和调试等步骤设计开发了航空网上订票系统。本系统前台主要使用 JSP 作为开发语言,后台使用SqlServer 作为数据库管理系统,开发环境是 MyEclipse,服务器采用 to
2、mcat,开发出的一个基于 Web 技术的 B/S 结构的机票售票系统。关键词:机票售票;JSP;B/S 结构Abstract:As information technology matures, computer management function has a profound understanding of people, and it has played an increasingly important role in various fields of human society.Especially in the field of aerospace management.
3、This article in view of the actual situation of the airline tickets, according to the software engineering structured design thought, after the project can do study and needs analysis, overall design, detailed design, as well as code realization and debugging and other steps designed and developed t
4、ickets online system fire station. This system mainly used as a receptionist JSP language development, use as a background SqlServer database management system, the development environment is MyEclipse, server using tomcat, developed a Web technology based on B/S structure of the ticket counter syst
5、em。Key words:Ticket reservation; JSP; B / S structure第 3 页 (共 21 页)1 绪论1.1 课题背景机票销售的管理和规范问题,是困扰我们多年的一个问题,也是政府管理中的一 个难点,订票售票是客运业务中的一个最基本的业务,表面上看,它只是机票站业务的一个简单的部分,但是它涉及到管理与客户服务等多方面。随着信息技术的不断发展,计算机网络占据了非常重要的地位,过去传统的售票方式已经不能满足现代客运业务流量剧增的客观要求,这就要求一种全新的订票方式网上订票,来缓解订票高峰时期的客运压力,并为用户提供方便快捷的订票服务,由于计算机是一种高精度的仪
6、器,使得管理更加高效和准确。而本毕业设计就是针对这一问题开发出的一套管理系统。 1.2 目的和意义中国现在拥有非常先进、发达的机票售票系统,但目前的售票系统还是上世纪 60 年代开发的。2003 年以后,中国航空开始加快现代化建设,近几年来中国的机票售票系统已经逐步走向现代化,订票全国联网,实现了信息化管理。但是机票历史由来的“老大难”问题售票问题,一直无法得到解决。每年的各大节假日,全国人民总会为买票问题而苦恼,一部分人更是无缘机票。虽然目前的电话订票,也极大地方便了旅客,然而最贴近现代化发展水平的还是网上订票项目,为了更好地推动民航售票业务的持续发展,国家也积极推进一个良好稳定的民航售票管
7、理系统的发展。1.3 开发工具及技术1.3.1 开发工具此次设计主要采用 MyEclipse 加 Tomcat 后台服务器进行,设计过程中页面主要使用 JSP 技术完成,下面对 MyEclipse、Tomcat 和 SqlServer 数据库进行简要介绍。1.3.1.1 MyEclipse第 4 页 (共 21 页)MyEclipse,是一个十分优秀的用于开发 Java, J2EE 的 Eclipse 插件集合,MyEclipse 的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。MyEclipse 企业级工作平台( MyEclipse Enterprise Workbenc
8、h ,简称MyEclipse)是对 Eclipse IDE 的扩展,利用它我们可以在数据库和 JavaEE 的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSP , CSS, Javascript, SQL, Hibernate。1.3.1.2 Tomcat Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。可以这样认为,当在一台机器上配置好 Apahce 服务器,可利用它响应对
9、HTML 页面的访问请求。实际上 Tomcat 部分是 Apache 服务器的扩展,但它是独立运行的,所以当运行tomcat 时,它实际上作为一个与 Apache 独立的进程单独运行的。1.3.1.3 SqlServer SqlServer 使用 C 和 C+编写,并使用了多种编译器进行测试,保证源代码的可移植性;支持 AIX、FreeBSD 、HP-UX、Linux、 Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows 等多种操作系统;为多种编程语言提供了 API;支持多线程,充分利用 CPU 资源;提供TCP/IP、ODBC 和 J
10、DBC 等多种数据库连接途径;可以处理拥有上千万条记录的大型数据库。对于一般的个人使用者和中小型企业来说,SqlServer 提供的功能已经绰绰有余,而且由于 SqlServer 是开放源码软件,因此可以大大降低总体拥有成本。1.3.2 JSPJSP 技术使用 Java 编程语言编写类 XML 的 tags 和 scriptlets,来封装产生动态网页的处理逻辑。网页还能通过 tags 和 scriptlets 访问存在于服务端的资源的应用逻辑。JSP 将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,第 5 页 (共 21 页)使基于 Web 的应用程序的开发变得迅速和容易。 We
11、b 服务器在遇到访问 JSP 网页的请求时,首先执行其中的程序段,然后将执行结果连同 JSP 文件中的 HTML 代码一起返回给客户。插入的 Java 程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP 与Servlet 一样,是在服务器端执行的,通常返回给客户端就是一个 HTML 文本,因此客户端只要有浏览器能浏览。JSP 页面由 HTML 代码和嵌入其中的 Java 代码所组成。服务器在页面被客户端请求以后对这些 Java 代码进行处理,然后将生成的HTML 页面返回给客户端的浏览器。Servlet 是 JSP 的技术基础,而且大型的 Web应用程序的开发需要 J
12、ava Servlet 和 JSP 配合才能完成。JSP 具备了 Java 技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。JSP 技术的优点:(1)一次编写,到处运行。除了系统之外,代码不用做任何更改。 (2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比 ASP/.net 的局限性是显而易见的。 (3)强大的可伸缩性。从只有一个小的 Jar 文件就可以运行 Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台 Application 进行事务处理,消息处理,一台服务器到无数台服务器,
13、Java 显示了一个巨大的生命力。 (4)多样化和功能强大的开发工具支持。Java 已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下(5)支持服务器端组件。web 应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供 web 页面调用,以增强系统性能。JSP 可以使用成熟的 JAVA BEANS 组件来实现复杂商务功能。内部对象说明:request 客户端请求,此请求会包含来自 GET/POST 请求的参数; response 网页传回客户端的响应;pageContext 网页的属性是在这里管理;第 6 页 (共
14、21 页)session 与请求有关的会话;application servlet 正在执行的内容;out 用来传送响应的输出流; config 代码片段配置对象;page JSP 网页本身; exception 针对错误网页,未捕捉的例外1.3.3 JavaScriptJavaScript 是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端 Web 开发的脚本语言,常用来给 HTML 网页添加动态功能,比如响应用户的各种操作。JavaScript 的一个重要功能就是面向对象的功能,通过基于对象的程序设计,可以用更直观、模块化和可重复使用的方式进行程序开发。在
15、 HTML 基础上,使用 Javascript 可以开发交互式 Web 网页。Javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。在本系统中很多地方使用了 javascript技术,比如说,检验用户输入数据的有效性,是否重复,是否为空等等。1.3.4 Struts 2 简介Struts 最早是作为 Apache Jakarta 项目的组成部分问世运作。项目的创立者希望通过对该项目的研究,改进和提高 Java Server Pages、Servlet、标签库以及面向对象的技术水准。它的目的是为了减少在运用 MVC 设计模
16、型来开发 Web 应用的时间。使用 Struts 的目的是为了帮助我们减少在运用 MVC 设计模型来开发 Web 应用的时间。Struts 是 Apache 软件基金会(ASF )赞助的一个开源项目。它最初是Jakarta 项目中的一个子项目,并在 2002 年 3 月成为 ASF 的顶级项目。它通过采用 Java ServletJSP 技术,实现了基于 Java EE Web 应用的 Model-View-ControllerMVC设计模式的应用框架Web Framework ,是 MVC 经典设计模式中的一个经典产品。而 Struts2 则是 Struts 的升级版本。它的优点在于: St
17、ruts2 基于 MVC 架构,框架结构清晰,开发流程一目了然,开发人员可以很好的掌控开发的过程;第 7 页 (共 21 页) 使用 OGNL 进行参数传递; 强大的拦截器; 易于测试; 易于扩展的插件机制; 全局结果与声明式异常。1.3.5 Hibernate 简介Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate 可以应用在任何使用 JDBC 的场合,既可以在 Java 的客户端程序使用,也可以在 Servlet/JSP 的 Web 应用中使用,最具革命意
18、义的是, Hibernate可以在应用 EJB 的 J2EE 架构中取代 CMP,完成数据持久化的重任。Hibernate 的核心接口一共有 2 个,分别为:Session、SessionFactory、Transaction、Query 和 Configuration。这 2 个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。1.4 软硬件需求硬 件 需 求 :CPU: Pentium 以 上 计 算 机内 存 : 512M 以 上软 件 需 求 :操 作 系 统 版 本 : Windows XP /vista/Win7开 发 工 具 : MyE
19、clipse 6.0.1后 台 服 务 器 : Apache Tomcat 6.0开 发 语 言 : Java浏 览 器 : IE6.0第 8 页 (共 21 页)2 需求分析2.1 需求调研在项目的开始是需求调研,并且走访了几个机票代售点,经过一系列的调查与谈话中发现,机票销售的管理和规范问题,是困扰我们多年的一个老问题,也是政府管理中的一个难点,订票是客运业务中的一个最基本的业务,表面上看,它只是机票站业务的一个简 单的部分,但是它涉及到管理与客户服务等多方面,因此,过去传统的售票方式已经不能 满足现代客运业务流量剧增的客观要求,这就要求一种全新的订票方式网上订票,来缓解订票高峰时期的客运
20、压力,并为用户提供方便快捷的订票服务。2.2 可行性分析开发任何一个系统,都会受到时间和资源上的限制。因此,在每一个项目开发之前,都要进行可行性分析,可以减少项目的开发风险,避免人力、物力和财力的浪费。下面就技术、经济、操作和法律四个方面来介绍。2.2.1 技术的可行性本系统开发工具是 MyEclipse 和 SqlServer 数据库,开发语言是 Java,主要使用了 J2EE 的技术,java 是一种面向对象编程语言,简单易学而且灵活方便。大三时就学习了 java 课程,大四期间也系统的了解了 J2EE 的知识,机票售票系统总体上开发难度不高,数据库的设计和操作是本系统设计的核心。在大学期
21、间学习过软件工程,软件测试,UML 统一建模语言等课程,每个学期也会完成对应的课程设计,具备一定的系统分析、设计和测试能力。因此,完成系统实现在技术上完全具有可行性。2.2.2 经济的可行性如今是信息化时代,信息化管理可以使机票管理、预订工作更加系统化、快速化、全面化。这样可以为企业带来较高的工作效益和经济效益,本系统对计算机配置的要求不高,企业机房更换下来的低配置电脑都可以完全满足需要,再者,第 9 页 (共 21 页)企业在管理工作上的高效率和便捷性远远超过了开发本系统的成本,所以在经济上具有完全的可行性。2.2.3 操作可行性本系统操作简单,输入信息页面大多数都是下拉框的选择形式,在某些
22、页面,信息可以自动生成,无需输入,时间的输入也是用的日历控件,操作简便,对操作人员的要求很低,只需对 WINDOWS 操作熟练,加之对本系统的操作稍加培训即可工作,而且本系统可视性非常好,所以在技术上不会有很大难度。2.2.4 法律的可行性本系统是自行开发的管理系统,是很有实际意义的系统,开发环境软件和使用的数据库都是开源代码,开发这个系统不同于开发普通的系统软件,不存在侵权等问题,即法律上是可行的。综上所述,开发一个电子机票售票系统与传统售票的方式相比具有速度更快,操作更准确,节省开支等有利之处,因此,建立一个电子机票售票系统是必要可行的。2.3 系统用户用例图2.3.1 管理员用例图管理员
23、是系统的核心用户,涉及到四大功能模块,管理员对系统的所有用户有着操作的权限,能够及时动态的掌握机票及订单的各项情况。有权限的管理人员登陆系统修改密码会员信息管理留言信息管理公告管理管理员管理航班信息管理订单信息管理图 2.1 管理员用例图第 10 页 (共 21 页)2.4 功能模块需求分析本系统最大的特点是使用操作简单、友好的提示信息。本系统将实现以下基本功能:(1)系统具有简洁大方的页面,使用简便,友好的错误操作提示(2)管理员用户具有管理员信息管理、会员信息管理、航班信息管理、订单信息管理、公告管理、留言信息管理等功能(3)具有较强的安全性,避免用户的恶意操作管理员功能模块图说明:管理员
24、是功能最多的一种用户角色。(1)管理员管理模块:在该模块中完成管理员信息管理功能。管理员信息管理提供系统管理员的查询,增加和删除等功能操作。(2)会员信息管理模块:在该模块中定义了注册会员信息的管理,其功能包括会员信息的查询、删除等操作。(3)航班信息管理模块:在该模块中定义了对航班信息的管理,其功能包括航班信息录入、查询、删除等操作。(4)订单信息管理模块:在该模块中定义了对订单信息的管理,其功能包括订单信息查询、受理、删除等操作。(5)公告信息管理模块:在该模块中定义了对系统公告信息的管理,其功能包括公告信息添加、查询、删除等操作。(6)留言信息管理模块:在该模块中定义了对留言信息的管理,其功能包括留言信息查询、删除等操作。管理员用户功能模块图如下。