1、毕业设计(论文) 基于 JSP 航空订票系统的设计与实现 系 别 : 计算机科学与技术系 专 业 ( 班 级 ) : 计算机科学与技术(2010 级 1 班) 作 者 ( 学 号 ) : 指 导 教 师 : 完 成 日 期 : 2014 年 5 月 10 日 蚌埠学院教务处制 目 录 摘 要 .1 Abstract2 1 概 述 .3 1.1 项目简介 3 1.1.1 项目开发的目的 3 1.1.2 项目开发的意义 3 1.1.3 同类软件国内外的现状 .4 2 开发工具及相关技术简介 5 2.1 JSP技术简介 .5 2.2 SQL Server 2008 简介 5 2.3 Apache T
2、omcat 6.0 简介 .6 2.4 MyEclipse 的简介 .6 3 可行性分析 8 3.1 经济可行性 8 3.2 法律可行性 8 3.3 技术可行性 8 4 需求分析 .10 4.1系统功能需求10 4.1.1 航班信息浏览功能 .10 4.1.2 航班查询功能 .10 4.1.3 机票预订功能 .10 4.1.4 用户注册和登录功能 .10 4.1.5 密码修改功能 .10 4.1.6 机票购物车功能 .10 4.1.7 后台管理功能 11 4.2 数据库需求分析 .11 4.2.1 实体数据分析 .11 4.2.2 实体关系分析 .11 5 总体设计 .11 5.1数据库的设计
3、13 5.1.1 数据库概念设计 13 5.1.2 数据库表的设计 .14 5.2系统功能模块的设计15 5.2.1前台管理模块的总体设计16 5.2.2后台管理模块的总体设计16 5.3 系统架构设计 .16 6 详细设计 .16 6.1 用户注册 .18 6.2 登录 .19 6.2.1 用户登录 .19 6.2.2 管理员登录 .21 6.3 前台管理设计 .22 6.3.1 个人信息修改 .22 6.3.2 密码修改 .22 6.3.3 预定机票 .23 6.3.4 查看购物车 24 6.4 后台管理 24 6.4.1 制定航班 .25 6.4.2 查看航班 .25 6.4.3 安排航
4、班 .26 7 系统测试 .27 结论 .29 致谢 .30 参考文献 .31 - 1 - 基于 JSP 航空订票系统的设计与实现 摘 要:把网络订票系统应用在航空领域,不仅能够方便广大乘客的出行,还能够给 航空工作人员带来工作便利,提高工作的效率,节省人力资源。本系统是基于 B/S 架构的动态的网上订票的服务网站。在设计过程中主要使用的开发工具是 MyEclipse,SQL server 2008 作为后台数据库,Tomcat 作为服务器,采用 JSP(Java Server Pages)和 Web 技术作为开发手段。该系统分为前台管理和后 台管理两个部分,前台包括用户注册,航班、航线和机票
5、价格的查询,还包括 了订票,修改订票信息以及个人信息;后台主要是航空公司工作人员对航班信 息、订票单信息、通知信息、链接信息的管理。 关键词:JSP; SQL server 2008;订票;管理系统;信息 王安:基于 JSP 航空订票系统的设计与实现 - 2 - Design and Implementation of Airline Booking Management Information System Based on JSP Abstract:The network reservation system application in the field of aviation, ca
6、n not only facilitate the majority of passengers travel, but also bring convenience to the airline staff for working, to improve work efficiency and save human resource. This system is based on B/S architecture of dynamic online booking service. In the designing process the main use of development t
7、ools is MyEclipse, putting SQL server 2008 as the backstage database, putting Tomcat as the server, using JSP (Java server Pages) and Web technology as a means of development. The system is divided into two parts. One is foreground and another is background management. Front part included user regis
8、tration, flights, routes and ticket price query, booking, modify the booking information and personal information; background had mainly the airline staff to the flight information, booking sheet information, notifications, and links to information management. Keyword:JSP; SQL Server 2008; Ticket; M
9、anagement Systems; Information - 3 - 基于 JSP 航空订票系统的设计与实现 1 概 述 1.1 项目简介 网上订票是可以代替人工订票的一种新型的订票方式,它不仅能够方便广大乘客 的出行,还能够给客运工作人员带来工作便利,提高工作的效率,节省人力资源等; 更能够缓解订票高峰时期的客运压力。 本系统是基于 JSP 开发工具和 SQL server2008 数据库在 Web 上共同实现的一个航 空订票系统,用户可以通过登录该订票网站,实现对航空航班的班次查询以及机票的 预订、退订等各个自主性的操作 1。 1.1.1 项目开发的目的 自因特网的快速发展以来,人类也
10、越来越离不开对网上信息的需求,因此航空订 票系统的发展趋势就是完全自动化的智能的信息查询,然而随着计算机和因特网的普 及,人们对信息的处理也越来越多,越来越复杂,可是传统的人工售票方式过程复杂, 执行的效率低,所以为了改善人工售票方式的不足,开发一个更便捷的航空订票系统 网上航空订票系统 2。 1.1.2 项目开发的意义 在如今的网络经济时代,各式各样的订票方式受到Web的影响越来越大,航空部 门的订票方式也是如此,以前传统手工的航空售票,航班查询和决策的工作是一项很 繁琐而复杂的管理过程,执行效率低,并且容易出错,然而在当今信息如此发达的时 代,使用电脑软件进行信息的查询,利用Interne
11、t使信息共享,那么乘客就可以在任何 地方查询任何他想要用的信息 3。 该系统是基于JSP+Web技术设计的一个集成独立开发的航空订票系统,在不同的 计算机平台上都能运行,它突破在具体的平台(操作系统,编程语言,应用服务器等) 上的限制性,使用了比较统一灵活的数据格式,面相构造方法和Web技术的优势相结 合,改变了现有的网上订票系统存在的灵活性差,可扩展性等一些问题 4。 该航空订票系统软件,能够帮助乘客利用联网的计算机快速的查询航空信息。此 王安:基于 JSP 航空订票系统的设计与实现 - 4 - 订票软件集成了航班的所有信息,如:航班的基本数据、航班管理、航班查询和订票 管理等,目的是能够使
12、更加方便使乘客对航班信息的查询与其他操作,同时也让航空 管理人员方便快捷的对航班时刻信息的更新与管理 5。 1.1.3 同类软件国内外的现状 如今,订票系统在国内外已经到了广泛的应用,不管是商业订票,还是客运订票 6。 对于客运,无论是坐汽车,火车,还是飞机,都是经过订票系统进行相应的订票。国 外订票系统的开发和应用起步比国内早,而且国外的通信比国内发达。例如,早在二 十世纪七十年代的欧美等西方发达国家早就使用计算机进行订票了 7。据 1995 年 5 月 27 日的今日电子报道,美国的南旧金山 Documents 联合公司宣布,他们开发的结 果传递系统装载到一个电子数据系统公司控制的全国范围
13、的私人网络 8。此产品最具代 表性的应用就是迅速地将飞机票从旅行社传递到他们所有的主顾,为顾客带来了极大 的方便,也就是最初的网上订票 9。 由于近代的一些历史原因,在二十世纪九十年代以前,中国在这方面的发展比较 落后与欧美等西方国家 10。但是,在改革开放以后,我国的市场经济体制、管理体制、 方法和手段的日趋成熟,因此我国的交通运输业得到了快速的发展。此时,各个交通 运输业部门的竞争日益激烈,为了提高运营效率和市场竞争力,在国内政策的有效引 导下,交通运输部门、铁路运输业和航空运输业等开始实施了一整套新的改革,他们 都相继成功研发了各自售票和订票系统 11。由于这次的改革,我国在此领域上的发
14、展 十分迅速,例如,在中国一大部分城市都有了飞机场,这些飞机的营业都采用了网上 售票,这就使得人们的出行更加方便。另外,与国外相比,我国是一个人口大国,会 有比国外更多的人去乘坐飞机出行,所以买票就不可以停止,对航空系统的安全性, 稳定性的要求要更高 12。可以这么说,我国的航空订票系统要具有更广的覆盖面、庞 大的交易量、实时性的强大、系统的安全可靠、系统的复杂度高等特点,比任何其他 国家的航空订票系统都要复杂强大的多 13。要开发如此强大的订票系统,其难度可想 有多大,国内外专家在了解中国国情之后,都感叹这个系统如果能完美的构建,那么 此订票系统堪称该类系统之最。因此,我们的航空订票系统的构
15、建任重而道远 14。 - 5 - 2 开发工具及相关技术简介 2.1 JSP 技术简介 JSP 是由 SUN 公司和许多公司一起参与一起建立的一种动态技术标准,是在传统 的网页 HTML 文件(*.htm,*html)中加入了 JSP 的标签和 Java 程序片段(Scriptlet) ,从而 构成了 JSP 网页 15。JSP 网页中的 Java 程序片段可以操作后台数据库、重新定向网页 和发送 E-mail 等,以此实现了建立动态网站所需要的一些功能。它的所有程序操作都 是在服务端的服务器上执行,而网络上送给用户的仅仅是得到的结果,那么这样就会 大大降低对用户的客户端浏览器的要求,不管用户
16、的浏览器是否支持 Java,都能访问 JSP 网页 (*.jsp)。 JSP 其实就是一个简化的 Servlet 设计,因为它可以实现 Html 语法中的 Java 扩张 (以 形式 )。JSP 与 Servlet 一样,都是在服务端的服务器上执行的。通常在服务 端执行后返回给用户端是一个 Html 文本,因此用户只要有浏览器就可以浏览。Web 服 务器在访问 JSP 网页出现访问请求超时,首先会执行其中的 Java 程序片段,然后执行 的结果会连同 JSP 文件中的 Html 代码一起返回给用户的客户端。通常的情况下 JSP 页 面很少去操作后台的数据,只是用来去实现网页的静态化页面和提取网
17、页上输入的数 据,不会去进行相应的业务处理。在页面中插入 Java 程序段后,就可以操作数据库, 重定性网页或者发送 E-mail,以此来实现动态页面所需要的功能。 JSP 技术就是使用 Java 语言去编写 XML 文件(*.xml)中的 Tags 和 Scriptlets,之后 去封装它所产生的动态网页的处理逻辑,还能通过 Tags 和 Scriptlets 去访问来于服务器 端资源的应用逻辑。JSP 技术可以将网页的逻辑和网页的设计分离开来处理,还能支持 组件的可重用性设计,使得基于 Web 应用程序的设计变得简单。 JSP 是一种动态页面 技术,它的主要功能是将表示逻辑从 Servle
18、t 中分离出来。在一个页面中由 Html 语言 编写的代码和嵌入其中的 Java 程序片段构成,那么这个页面就是 JSP 页面。 2.2 SQL Server 2008 简介 SQL Server 2008 是在微软的数据平台上发布的。它可以管理任何数据,也可以存 储结构化,非结构化以及半结构化的文档数据,同时它还可以对已存入的数据进行查 询、同步、分析、修改、删除等一些操作。我们所接触的一些数据可以存储在各种可 存储数据的设备上,例如,从存储数据最大的服务器上到个人的桌面计算机和更小的 王安:基于 JSP 航空订票系统的设计与实现 - 6 - 移动设备上,它都可以控制数据而不需要管数据存储在
19、什么地方。 SQL Server 2008 具有强大的数据管理功能,提供了丰富的管理工具去管理数据的 完整性和安全性。它具有分布式数据库和数据仓库,能够进行联机分析处理。同时还 是一个可实际运行的存储,维护和为应用系统提供安全性,完整性数据的软件系统。 SQL Server 2008 的优点 (1) 支持 WEB SQL Server 2008 为 WEB 提供了标准的数据库扩展编程功能,丰富了以 XML 格式 存储和检获数据的功能。 通过 WEB 可以访问数据库 具有了 SQL Server 数据库,您就可以使用 Http 来向 SQL 数据库发送查询和对数 据库里的存储文档来执行全文搜索。
20、 强大且灵活的基于 WEB 的分析 Internet 里嵌入 SQL Server 2008 分析服务功能,您就可以通过 Web 浏览来访问和 控制数据。 (2) 保护信息 SQL Server 2008 可以利用自身的全面审核功能,数据加密和设置外围应用配置器 来提高您数据的安全性。 (3) 具有高度的可伸缩性和可靠性 SQL Server 2008 通过具有向上伸缩和向外扩展功能,可以满足那些对数据库具有 苛刻性要求的电子商务和企业。 2.3 Apache Tomcat 6.0 简介 Tomcat 服务器是由 Apache Software Foundation(Apache 软件基金会)
21、中 Apache Group Jadarta 开发小组开发的一个免费的开放源代码的服务器软件。由于有了 SUN 公 司的参与与支持,最新的 Servlet 和 Jsp 的规范都能在 Tomcat 中体现。它的不足之处就 是它的配置比较繁琐,而且还具有一些安全问题,但是总的来说 Tomcat 技术先进,稳 定性和兼容性很好,而且还免费,因而受到了广大 Java 爱好者和大多数软件公司的支 持,成为目前较为流行的 WEB 应用服务器软件。 - 7 - 2.4 MyEclipse 的简介 My Eclipse 是企业级的工作平台。它是对 Eclipse 的扩展,利用它可以在数据库和 JavaEE(J
22、ava Enterpride Edition)的开发、发布以及应用程序服务器的整合方面大大提高 了工作效率,能丰富 JavaEE 集成开发环境,包括了完备的编码,调试、测试和发布功 能。 在 MyEclipse 组件中,方便地提供了 JSP、Servlet、HTML、XML、Struts、Hibernate、Spring 等框架的开发支持,而且随着 新技术的不断推出,MyEclipse 也在不断的发展。 王安:基于 JSP 航空订票系统的设计与实现 - 8 - 3 可行性分析 3.1 经济可行性 在当今社会,随着物价的飞速上涨,对于一个简单的航班查询预订网站来说,我 们只需一次性投入 2-4万
23、元即可。在网站的开始阶段主要由对网站的界面进行设计, 数据库的建立,服务器的搭建,网站地址的申请等产生的费用,不需要其他的过多操 作,其次就是开发期间产生的日常费用,但主要的费用是用来对后期网站和后台数据 库的维护。当然,本系统的维护人员不需太多,系统的维护过程也很简单,一两个维 护人员即可。此系统的应用,能提高航空工作人员的工作效率和减少乘客排队询问买 票的时间。另外,此订票系统具有网络开放等特性,可让乘客在任何具有网络的地方 随时随地进行查票和订票,而航空的工作人员也可以随时随地的处理乘客的订票订单, 这样会必然的使机票的销售量有所增加。 由于航班的班次以及出发时间较为固定,不会轻易的去被
24、修改,而且它们的信息 比较容易去查询,这样就会使网站的开发以及后期维护所需要的费用大大减少。本系 统与传统的订票方式相比,具有高效率、高质量、低成本等优点,能够节省人力、物 力以及财力的消耗。所以,本系统具有经济可行性。 3.2 法律可行性 该订票系统最主要的使用者是广大的乘客、机场的售票人员以及各地区代售票人 员。对于在网上订票,我国在这方面制定了一些较为严格的法律规定,因此我们广大 的乘客应该秉着诚实守信的原则,遵守这些相关的法律规定。 在该系统的设计中,所使用的部分软件涉及到了一些版权问题,如:My Eclipse10.0,Microsoft SQL Server 2008 等(这些软件
25、都需要花费资金购买正版)。但是 如果这个系统不是用于商业,只是用于学生的毕业设计的话,那么就不会对开发公司 附有法律效应。 3.3 技术可行性 该系统主要是基于 JSP 的网上订票系统,它所涉及的主要开发软件工具是 My Eclipse 和 Microsoft SQL Server 2008 数据库,主要技术是 JSP 技术,JavaBean 技术等。 - 9 - 本系统的各个操作界面只是用 JSP 技术实现的一些简单页面,链接数据库和对文件处 理是用到了 JavaBeans 技术。对于 My Eclipse 开发工具,它具有强大的语法提示和错 误警告功能,因此放便开发者用 Java 和 JS
26、P 去开发。Microsoft SQL Server 2008 作为一 个后台数据库,它具保护客户信息、提供可预测响应、最大限度地减少管理监视、集 成任何据等优点。在本系统开发完成之后,只需要通过注册和缴费向域名管理机构申 请一个域名使用权即可通过网络使用了。 本航空订票系统所涉及到的技术主要有以下几个方面: 数据库技术; 系统架构技术(使用 B/S 架构); 页面开发技术,会使用 Html 编程语言和 JSP 技术; 配置开发环境和服务器,在装有 Windows 操作系统的计算机上安装 SQL Server 2008 数据库,搭建 MyEclipse 平台和配置 Tomact 服务器。 王安
27、:基于 JSP 航空订票系统的设计与实现 - 10 - 4 需求分析 4.1 系统功能需求 4.1.1 航班信息浏览功能 机场的工作人员可以根据现实具体的信息来发布航班信息供用户来查询,而用户 可以通过浏览器登录本系统来浏览航班信息,选择自己所想要预定的航班。此功能提 供了所有的航班信息,根据发布时间来排序,能够使用户更清楚的了解航班信息。 4.1.2 航班查询功能 乘客可以根据航班飞行路线进行班次的具体查询,方便乘客进行信息的查询。当 乘客面对这些庞大的航班信息时,怎样才能使乘客获得自己想要的航班信息,这是考 验系统实现功能非常关键的一点。那么,航班查询功能就可以做到大大缩短乘客找到 正确的
28、航班信息。 4.1.3 机票预订功能 乘客可以按照自己想要的路线预订机票,预订之后就会被系统自动保存到“购物 车”当中。然后,乘客就可以根据填写机票数量,选择付款方式付款即可。 4.1.4 用户注册和登录功能 如果乘客想成为该网站会员,就可以通过注册功能填写一些必要的信息,然后就 可以注册成为本网站的会员。当用户成为本网站的会员时,可以通过登录功能登录本 网站,就享有在本网站进行机票预订,修改个人信息和相关密码操作等。 4.1.5 密码修改功能 这是提供给用户随时修改密码的功能。也是一个网站不可缺少的功能,它是用户 信息安全的保障。 4.1.6 机票购物车功能 因为无法确定用户预订机票之后是否
29、决定真正的要购买机票,这样就可以把用户 预订的机票保存到“购物车”里,而用户还可以继续预订其他机票。在“购物车”功 - 11 - 能里,用户还可以修改之前预订的机票信息,当然还可以退票。 4.1.7 后台管理功能 这个功能是由管理人员管理的,它包括了一些其他功能:航班定制功能,安排航 班日期功能,查看航班功能。 4.2 数据库需求分析 4.2.1 实体数据分析 实体数据必须要具有被查询、修改、保存以及删除等特性,这样就需要数据结构 能够充分的满足用户各种信息的输入输出。在对本系统完整的数据流程进行详细的分 析之后,从中抽象获得了如下几个实体: 用户:代表每个用户实体,这个用户实体包含了用户名、
30、密码、真实姓名、性别、 电话号码、电子邮件等属性。 航班:代表每个飞机实体,由于每架飞机只能在一个时间段里执行运送乘客任务, 所以把每架飞机的起飞到降落设为一次航班,这样就形成了航班实体。航班实体主要 的属性有航班号、航班日期、出发地点、目的地、票价、票数。 订单:代表每个用户购买机票所产生的一次交易信息,其主要的属性是真实姓名 和航班班次信息。 4.2.2 实体关系分析 用户与航班是多对多的关系。一个用户同时可以买多张相同航班班次的机票, 而一个航班班次的机票可以被多个用户购买。 用户与订单之间是一对多的关系。一个用户可以有多个订单,而一个订单只能 属于一个用户。 飞机与航班班次是一对多的关
31、系。一个飞机实行多个航班(一架飞机在不同的 时间段内执行多个航班) ,而一个航班只能由一个飞机去实行。 时间安排和航班班次是多对一的关系。同一时间段可以安排多个航班班次,而 一个航班班次只能安排在特定的时间段中。 经过对上面系统功能模块的分析,给出的数据流程图,如图 4-1所示: 王安:基于 JSP 航空订票系统的设计与实现 - 12 - 图 4-1 系统功能流程图 - 13 - 5 总体设计 5.1 数据库的设计 5.1.1 数据库概念设计 用户的需求主要体现在各种信息的查询、修改、保存等,这样就需要实体数据能 够充分的满足用户各种信息的输入与输出。 通过对本系统实现总体功能的步骤、内容以及
32、数据流程的具体分析,设计出了如 下数据项: 航班信息的属性包括:航班号、起飞地点、目的地点、旅程(小时)、价格(¥)、 票数(张); 订票信息的属性包括:航班号、出发地点、目的地、航班日期、票价、总票数; 用户信息的属性包括:用户名、密码、真实姓名、性别、电话号码、电子邮件; 根据实体属性和实体之间的关系设计 E-R图,如图 5-1与 5-2所示: 图 5-1 实体与属性 E-R 图 王安:基于 JSP 航空订票系统的设计与实现 - 14 - 图 5-2 实体与实体关系 E-R 图 5.1.2 数据库表的设计 本项目的数据库 test 使用了 3 个表。 表 user 为 用户信息表,它用来存
33、储用户的用户信息的,该表结构如表 5-1 所示: 表 5-1 用户信息表 user 的结构表 字 段 类 型 字段长度 是否为空 备 注 Username Nvarchar 20 否 用户名(主键) Password Nvarchar 16 否 密 码 Name Nvarchar 10 否 真实姓名 Sex Nvarchar 4 否 性 别 Tel Nvarchar 16 否 电话号码 Email Nvarchar 30 否 电子邮件 表 sch 为航班信息表,它是用来存储本系统所有的航班信息,该表的结构如表 5-2 所示 - 15 - 表 5-2 航班信息表 sch 的结构表 字 段 类 型
34、 字段长度 是否为空 备 注 Hao Nvarchar 10 否 航班号(主键) Qifei Nvarchar 20 否 出发地点 Rqi Nvarchar 20 否 目的地 Mudi Date - 是 航班日期 Jiage Int - 否 票价 Piaosu Int - 否 总票数 表 din 为订票表,它是用来存储用户订票的信息,该表的结构如表 5-3 所示: 表 5-3 订票信息表 din 的结构表 字 段 类 型 字段长度 是否为空 备 注 Hao Nvarchar 10 否 航班号(主键) Qifei Nvarchar 20 否 出发地点 Mudi Nvarchar 20 否 目的地
35、 Riqi Date - 是 航班日期 Jiage Int - 否 票价 Piaosu Int - 否 订票数 5.2 系统功能模块的设计 根据之前的功能需求分析,本系统的功能模块可分为两部分:前台模块和后台模 块。所谓前台模块就是由用户登录后的模块,可由用户自己去管理;后台模块是指管 理员管理的模块,能够管理整个系统。所以系统功能模块图如图 5-3所示: 王安:基于 JSP 航空订票系统的设计与实现 - 16 - 图 5-3 系统功能模块图 5.2.1 前台管理模块的总体设计 前台管理主要是通过会员的登录,之后进行管理的,在这个模块里,可以查看本 站所有航班的详细信息。用户可以通过注册成为本
36、网站的会员,登录之后就可享有所 有会员的操作,如:修改个人注册信息、修改密码、预定机票、查看已预定机票的信 息,也可以随时返回首页或退出系统。 5.2.2 后台管理模块的总体设计 后台管理模块主要是由管理员登录管理的,管理员登录后可以查看目前所有航班 的信息,制定航班以及调整航班的日期。 查看航班信息:管理员可以查看当前所有的航班信息,获得最新信息。 制定航班:管理员可根据当前航班的信息,判断是否需要继续制定新的航班。 安排航班日期:管理员可以根据当前反馈的航班信息,或者在某些特殊的原因下 是否需要修改某航班的飞行日期。 5.3 系统架构设计 本系统的当前架构是由 MVC 三层架构来实现的。在
37、创建系统工程的第一步就是要 配置 Web.xml 文件,因为 Web.xml 文件会在 JSP 的表单提交时进行拦截,然后会在它 的内部给 JSP 表单进行分配,去寻找与它匹配的 Servlet,之后,找到的那个与它匹配 - 17 - 的 Servlet 进行相应的业务处理。Servlet 在控制层,且是控制层的核心。在控制层中的 控制器本身不会进行逻辑的业务处理,而是通过调用后台其他的方法进行处理的。那 么,最后就是对后台中逻辑处理的部分,通过这一部分逻辑业务的处理,首先链接数 据库,其次,去执行数据库里的查询方法或者其他的方法,最后会经执行后得到的数 值返回到之前发出命令的页面里显示出来,
38、至此就完成了几乎所有的 MVC 的步骤。 王安:基于 JSP 航空订票系统的设计与实现 - 18 - 6 详细设计 网站的首页(index.html)包含了用户的注册,会员的登录以及管理员的登录三 个模块。它是用 HTML语言编写的,其中用运 Javascript技术实现了三个点击按钮, 分别是:注册会员、会员登录以及管理员通道等按钮。运行效果图如图 6-1所示: 图 6-1 网站首页 6.1 用户注册 注册页(register.jsp)的整个页面布局用 HTML 语言编写,在具体的事件操作是用 Javascript 和 Jsp 编写的,在注册页面中的电子邮箱的匹配是根据编写的正则表达式来 匹
39、配的,手机号也是如此,必须是 11 位的。整个注册页面所用到的技术是 JavaBean 技术和 Jsp 技术。当注册成功时,就会把注册的信息全部保存到后台数据库的 user 表 中。 游客可以通过注册成为本网站的会员,登录之后就可享有所有会员的操作,如: 修改个人注册信息、修改密码、预定机票、查看已预定机票的信息,也可以随时返回 首页或退出系统。当游客选择注册时,必须填写一些用户的基本信息,如:用户名、 密码、真实姓名等。注册页显示的运行图如图 6-2 所示: - 19 - 图 6-2 会员注册页面 游客填写完所有的注册信息之后,会向表 user 中插入所有注册的信息,成功了就 提示:“注册成
40、功!,请单击此登录” 。运行效果图如图 6-3 所示: 图 6-3 注册成功 王安:基于 JSP 航空订票系统的设计与实现 - 20 - 6.2 登录 6.2.1 用户登录 用户登录页面(login.jsp)的设计比较简单,它的整个布局和注册页一样,只是它 需要把输入的账号和密码与后台数据库里的进行比对。 当游客通过注册之后,返回首页,点击会员登录,进入登录页面,输入用户名和 密码进行登录。页面运行图如图 6-4 所示: 图 6-4 会员登录页面 用户登录成功之后,进入会员管理界面。运行效果图如图 6-5所示: 图 6-5 会员管理页面 - 21 - 用户登是通过登录页面(login.jsp)
41、获得用户名和密码,然后提交给 LoginServlet.java,这段代码会把获得的用户名和密码与数据库中表 user 所包含用户名 和密码进行比对,比对成功就表示登录成功,就意味着登录失败。 6.2.2 管理员登录 管理员登录页面(Adminlogin.jsp)的设计又与用户登录界面设计相同,都是用到 JavaBean 和 Jsp 技术。在首页单击“管理员通道”进入管理员登录页面。运行效果图 如图 6-6所示: 图 6-6 管理员登录页面 输入管理员账号和密码,登录成功之后,进入管理员管理页面。运行效果图如图 6-7所示: 王安:基于 JSP 航空订票系统的设计与实现 - 22 - 图 6-
42、7 管理员管理页面 本系统只设立了唯一的管理员账号和密码。管理员登录页面(Adminlogin.jap)获 得输入的账号和密码之后,将账号和密码提交给 AdminServlet.java,然后由 AdminServlet.java 把获得的账号和密码和 config.properties 文件中存储的唯一管理员账 号和密码进行比对,比对成功就表示登录成功,否则就意味着登录失败。 6.3 前台管理设计 用户登录之后进入前台管理模块,它包含了以下几个模块:个人信息修改、密码 修改、预定机票、查看购物车等子模块。 6.3.1 个人信息修改 个人信息是用户当初注册时填写的信息,只有当用户登录成功之后才
43、能修改。它 的设计与注册页面相同,只是多加了一个导航条,其技术还是用到 Javabean 和 Jsp 技 术。该模块位置位于会员个人页面的导航条上,点击进入“个人信息管理”页面。页 面运行效果图如图 6-8 所示: - 23 - 图 6-8 个人信息管理页面 用户修改个人信息之后,该页面会将修改后的数据提交给 ModifyServlet.java,然 后 ModifyServlet.java 将这些数据在表 user 中做相应的修改,这样就完成了用户信息修 改的操作。 6.3.2 密码修改 密码修改的页面设计同样是用到 JavaBean 和 Jsp 技术,用户密码的修改,只有当 用户成功登录之
44、后才能操作。其模块位置位于会员个人页面的导航条上,点击进入 “密码修改”页面。页面运行效果图如图 6-9所示: 图 6-9 个人信息管理界面 王安:基于 JSP 航空订票系统的设计与实现 - 24 - 6.3.3 预定机票 用户根据自己的需求,查看航班信息,进行预定航班。当用户点击预定时,就会 跳转订票页面,用户可以选择订票的票数。其页面运行效果图如图 6-10和 6-11所示: 图 6-10 航班预定 图 6-11 确定订票 - 25 - 6.3.4 查看购物车 为了方便用户查看自己所预定的机票,查看购物车的链接位于会员个人页面的导 航条上,只需点击“查看购物车”就进入购物车页面。运行效果图
45、如图 6-12所示: 图 6-12 购物车页面 6.4 后台管理 后台管理是由管理员进行管理的,它包含了:制定航班、安排航班,查看航班等 子模块。 6.4.1 制定航班 制定航班模块是由航空内部的管理员根据各个渠道获得信息,具体的分析,然后 才进行航班制定,但对于航班日期是可变的,所以在这个模块不需要去制定,只需要 制定航班号、起飞地点、目的地、旅程(小时) 、价格、票数等信息。具体运行效果图 如图 6-13所示: 王安:基于 JSP 航空订票系统的设计与实现 - 26 - 图 6-13 航班定制 6.4.2 查看航班 管理员在制定航班之后可以查看定制的航班信息是否已经录入数据库,同时还可 以
46、修改选中的当前航班的出发日期。其运行效果图如图 6-14所示: 图 6-14 查看航班 6.4.3 安排航班 安排航班是安排航班的日期,由于航班日期具有变化性,在制定航班时,没有具 体的制定,所以把它放在这个模块里定制。在这个模块中还可以修改已定制好日期的 航班,这样也就实现了航班日期由于某些特殊的因素需要被修改的功能。该模块的运 行效果图如图 6-15所示: - 27 - 图 6-15 航班日期安排 在如图所示中,设置日期不需要在键盘上输入,只需要点击弹出来的日期选择框, 在其中选择所需要的日期,此处是用到了 JavaBean 技术在 Jsp 页面中设置日期属性, 用此技术构建一个能够弹出如
47、图一样的选择日期的复选框,减少了从键盘输入日期的 步骤。 王安:基于 JSP 航空订票系统的设计与实现 - 28 - 7 系统测试 在开发完成“基于 JSP航空订票系统”之后,我们需要对其进行一系列的系统功 能测试,是为了找出系统设计中开发人员没有注意到的系统漏洞和问题。当然,这些 都不是系统开发人员进行的,而是将开发完成的系统交给专业的测试人员进行测试。 但是,鉴于本次开发的系统是作为毕业设计,所以暂时由本人进行测试。 首先,进行的是白盒测试,所谓白盒测试就是按照程序内部的逻辑结构进行程序 测试的,通过这种测试来找出程序中的每条通路是否都按逻辑来进行的,这种测试不 仅能找出程序中隐藏的 BU
48、G,还能够提高系统的稳固性。 其次,进行的是黑盒测试,所谓的黑盒测试就是检测系统各个功能是否正常,或者 在某些极端操作下,功能是否依然正常运行。 具体测试步骤为: 功能界面测试:在不打开 WEB服务器的情况下,不停地点击页面链接,测试其 链接性,直到所有的页面链接都实现了预期的效果; 功能设计测试:对系统的几大功能设计进行逐一的测试,尽量发现些潜在的错 误; 例如:制定航班日期功能的测试 效果图如下: 图 7-1 制定日期测试 如图,当管理员在安排航班时,在设置日期时没有去设置,直接点击设定,就会出 - 29 - 现问题,如图 7-2所示: 图 7-2 日期的错误信息 可以看出,在这个日期功能
49、的设计还有些缺陷,这就是测试,不断的寻找问题,不 断的修改,直到完全解决这些潜在的问题。 系统性能测试:把该系统放在局域网上,查看是否能满足客户的需求操作; 通过这几个方面的测试使我修复了系统中不少的问题,也使该系统的性能提高不少, 实现了预期的效果。 王安:基于 JSP 航空订票系统的设计与实现 - 30 - 结 论 航空公司业务的数据在急剧增加以及当前用户对于订票的要求越来越高,传统的 售票方式与社会发展出现了一定的矛盾,针对该问题,设计一个航空订票系统是航空 企业发展的必然。Web 服务和 J2EE 技术是当今分布式系统和企业信息集成环境中被广 泛应用的先进技术,本文将二者结合起来,目的是为航空售票管理系统提供一个最完 善、稳定和最先进的开发应用环境,同时为系统今后的扩展奠定基础。在如今分布、 异构环境与复杂的企业经营过程下,大部分现有管理系统面对出现的并发操作和操作 失败等情况缺乏对执行正确性与可靠性的保证,因此对 J2EE 平台下基于 Web 服务的 事务的研究和实现是非常有意义的。 本系统在设计过程中主要采用了 MyEclipse 和 SQLServer 开发环境。采用 J2EE 的 MVC(Model-View-Con