java课程设计航空订票管理系统设计

合集下载

(完整版)java航空订票系统毕业设计论文

(完整版)java航空订票系统毕业设计论文

本科毕业论文java航空订票系统学院:计算机与信息工程学院专业: 05计科双学位学号:姓名:周楷指导教师:李建荣职称:····论文提交日期:二ОО八年四月摘要当前中国民航市场扩大迅速,随着生活水平的提高,越来越多的人选择飞机出行,对航空公司的服务要求的越来越高,为了适应快速发展的需求,管理大量数据,有效地稳定的管理航空公司,我们要为某航空公司开发一套国内机票售票系统,要求能通过分布在全国各主要城市的该航空公司的营业网点为顾客提供航班查询,购买机票以及退票的服务。

该系统的工作流程如下:当顾客到达营业网点后向航空公司营业员提供出发地,目的地和出发日期,营业员根据以上信息,操作软件,连接航空公司的服务器,查询满足条件的航班,然后根据顾客的要求选择某个航班,输入乘客信息,以及舱位信息,然后执行出票操作。

该系统在营业网点内能够完成营业员登录,查询航班,出票等功能。

在航空公司内部能够完成添加或删除航班,添加或删除营业网点,添加或删除营业员等功能。

除此之外,该系统还要求能统计每个营业网点的业务量,以及每位营业员的工作量,并将这些信息保存在服务器端,并能在服务器端随时查询。

关键词:民航管理系统分层部署AbstractThe current Chinese commercial aviation expansion of market is rapid, along with the living standard enhancement, more and more many people chooses the airplane journey, to airline's service request more and more order to adapt the fast development demand, the management mass datas, the stable management airline, we must develop a set of domestic airplane ticket booking system effectively for some airline, the request can through distribute provide the scheduled flight inquiry in the national each main city this airline's business mesh point for the customer, the service which the purchase airplane ticket as well as returns a ticket.This system work flow is as follows: When the customer arrives business mesh point backward airline shop employees to provide embarks above, the destination and embarks the date, the shop employee according to the information, operates the software, the connection airline's server, the inquiry satisfies the condition the scheduled flight, then chooses some scheduled flight according to customer's request, inputs the passenger information, as well as the seat on a ship information, then the execution shows a ticket the operation.This system can complete the shop employee in business mesh point to register, the inquiry scheduled flight, shows a ticket and so on the functions.Can complete the increase or the deletion scheduled flight in the airline interior, the increase or the deletion business mesh point, the increase ordeletes functions and so on shop employee.In addition, this system also requests to be able to count each business mesh point the business volume, as well as each shop employee's work load, and these information preservation in the server end, and can inquire as necessary in the server end.Key words :The commercial aviation the management system management system the lamination deployment目录1.引言1.1民航发展概况1.2 技术选择1.3 开发工具1.2.1CS与BS1.2.2java技术1.3 技术选择2.需求分析:2.1软件分层与部署:2.2系统功能模块:2.3系统活动图:2.3用例图:2.3.1客户端用例:2.3.2服务器端用例:3.概要设计:3.1业务模型:3.2数据库设计3.2.1飞机机型表(AIRPLANE_MODEL): 3.2.2航班计划表(FLIGHT_SCHEDULER): 3.2.3航班表(FLIGHT):3.2.4营业网点表(BRANCH):3.2.5出票记录表(TICKET_ORDER):3.3DAO接口设计3.3.1FlightDAO:3.3.2BranchDAO:3.3.3TicketOrderDAO:3.4主要工作流程:3.5详细时序图4.详细设计4.1流程详细分析4.2用表格显示表单4.3构件技术等,使 BS更加成熟.4.软件重用不同CS 程序可以不可避免的整体性考虑, 构件的重用性不如在BS要求下的构件的重用性好.BS 对的多重结构,要求构件相对独立的功能. 能够相对较好的重用.就入买来的餐桌可以再利用,而不是做在墙上的石头桌子5.系统维护不同系统维护是软件生存周期中,开销大,重要CS 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统BS 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.6.处理问题不同CS 程序可以处理用户面固定, 并且在相同区域, 安全要求高需求, 与操作系统相关. 应该都是相同的系统BS 建立在广域网上, 面向不同的用户群, 分散地域, 这是CS无法作到的. 与操作系统平台关系最小.7.用户接口不同CS 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高BS 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流. 并且大部分难度减低,减低开发成本.8.信息流不同CS 程序一般是典型的中央集权的机械式处理, 交互性相对低BS 信息流向可变化, B-B B-C B-G等信息、流向的变化, 更象交易中心1.2.2Java技术Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。

软件工程课程设计机票预定系统

软件工程课程设计机票预定系统

软件工程课程设计机票预定系统1. 系统简介机票预定系统是一款基于网络的应用程序,旨在帮助用户方便、快捷地预订机票。

该系统根据用户输入的信息,自动搜索相应的航班信息并进行比较,计算最优的价格方案。

用户可以在系统中查询航班信息、选择座位、进行支付等操作。

2. 项目需求(1)用户管理:实现用户注册、登录、信息修改等功能。

(2)航班信息管理:实现航班信息的录入、修改、查询、删除等功能。

(3)机票预订功能:实现用户选择航班、选座、支付等功能。

(4)管理员管理:实现管理员登录、审核机票信息、统计数据等功能。

(5)安全性:确保用户信息和交易安全。

3. 项目架构基于Java EE技术,使用Struts2框架、Spring框架和Hibernate框架实现。

(1)Struts2框架负责控制器部分,接受用户请求并处理。

(2)Spring框架负责业务逻辑部分,完成业务逻辑的处理及事务管理。

(3)Hibernate框架负责数据访问部分,完成持久化操作。

4. 系统设计(1)用户管理用户登录:用户输入用户名和密码,服务器验证用户信息,验证通过则跳转至主页面;验证失败则提示用户重新登录。

用户注册:用户输入用户名、密码和邮箱地址,服务器验证用户信息重复性,通过验证后储存用户信息。

用户信息修改:用户登录后可修改个人密码和邮箱地址。

(2)航班信息管理航班信息录入:管理员可以录入航班信息,包括航班号、出发地、目的地、起飞时间、降落时间、航班状态和票价等。

航班信息查询:用户可以在主页面上查询航班信息,也可以根据条件查询。

(3)机票预订功能机票预订:用户选择航班、座位和数量后进行支付。

机票支付:用户可以通过银行卡、支付宝等方式进行支付。

(4)管理员管理管理员登录:管理员输入用户名、密码进行登录。

机票信息审核:管理员负责审核和更新机票信息,并进行统计。

5. 系统测试(1)功能测试:对各项功能进行测试,确保每个功能都符合设计要求。

(2)兼容性测试:对不同型号和版本的浏览器进行测试,确保用户在使用该系统时不会出现兼容性问题。

java课程设计机票预订系统设计与实现

java课程设计机票预订系统设计与实现

目录一、设计题目 (1)二、设计目的 (1)三、设计分析 (1)3.1 可行性分析 (1)3.2 需求分析 (2)系统需求 (2)功能需求 (3)四、整体设计 (4)4.1 系统功能设计 (4)4.2 系统功能模块简介 (4)五、数据库设计 (5)5.1 见解构造设计 (5)5.2 逻辑构造设计 (7)六、详尽设计 (9)6.1 要点业务流程描绘 (9)航空售票管理 (9)管理员管理流程 (9)6.2 系统界面设计 (10)主功能界面 (10)其余功能界面 (11)6.3 模块代码实现 (13)航空订票查问模块 (13)航空售票管理模块 (14)七、系统测试 (16)7.1 软件测试的目标 (16)7.2 详尽测试 (16)八、总结 (17)九、参照文件 (18)一、设计题目机票预定系统设计与实现二、设计目的经过课程设计,培育综合运用本门课程及其余课程的基础知识去解决某一实诘问题的实质领域,加深对该课程的理解主要培育以下能力:查阅资料:采集与本设计相关的资料的能力。

方案的选择:建立既考虑技术上的先进性,又考虑经济上的合理性,并注意提升分析和解决问题的实质能力,快速正确的进行工程计算的能力,计算机应用能力;用简短的文字,清楚的图标来表达自己的设计思想能力。

三、设计分析3.1 可行性分析跟着我国市场经济的快速发展和信息化水平的不停提升,怎样利用先进的管理手段,提升航空公司售票管理系统的水平,是此刻社会所面对的一个课题。

提升公司的管理水平,必然全方向地提升公司的管理意识。

只有高标准、高质量的管理才能知足航空公司的发展需求。

面对信息时代的挑战,利用高科技手段来提升航空公司售票管理系统无疑是一条卓有见效的门路。

在某种意义上,信息与科技在公司管理与现代化建设中展现出愈来愈重要的地位。

航空公司售票管理系统方面的信息化与科学化,已成为现代化生活水平步入高台阶的重要标记利用计算机实现航空信息管理势在必行。

对于航空公司来说,利用计算机支持管理部门高效率达成航空信息管理的平常势务,是适应现代航空公司制度要求、推进航空公司由劳动型管理走向科学化、规范化的必需条件;而航空信息管理是一项琐碎、复杂而又必然十分仔细正确的工作,航线信息的管理,客户信息的管理,票务信息的管理,绝对的不同样意犯错,假如实行手工操作,需手工填制大批的表格,这就会耗资工作人员大批的时间和精力,并且安全度也不理想,利用计算机进行航空公司信息工作的管理,不只好够保证各项信息正确无误、快速输出,同时计算机拥有手工管理所没法比较的长处,比方:检索快速、查找方便、靠谱性高、储蓄量大、保密性好、寿命长、成本低等。

Java课程设计飞机航班管理系统

Java课程设计飞机航班管理系统

一.引言1.1项目的名称飞机航班信息管理系统1.2项目背景和目标飞机航班信息管理系统主要能够查询飞机的航班情况,飞行线路,票价,折扣等等情况,并能够在数据库中更新维护飞机航班的信息,对飞机航班数据库进行管理,如航班的增加,删除和修改等。

我们的目标就是为该系统提供后台连接数据库程序设计以及前台用户界面设计。

1.3项目的可行性研究设计此系统需要java面向对象编程基础,数据库应用知识以及功能分析。

根据目前所开设的课程,学生已经具备这样的知识,有能力综合java编程知识和数据库应用知识做出一个这样的飞机航班信息管理系统。

二、需求分析2.1系统概述此系统提供给系统管理员和用户。

系统管理员登陆后可以对飞机航班信息进行管理,如:添加飞机航班信息,删除飞机航班信息,修改飞机航班属性。

用户登陆后能进行飞机航班信息查询,订票以及退订。

2.2系统运行环境Java运行在eclipse软件上,数据库用mysql数据库2.3功能需求描述用户选择相关的服务项目可以查看相关航班基本信息,并且可以根据自己需求选择相应服务,系统的信息更新时,相关的信息经过相应处理后,会存入到飞机航班数据库中的航班信息记录表中;系统管理员根据航空公司实际情况可以更新航班信息,并通过修改信息处理后被保存到飞机航班表中。

三、系统设计3.1开发与设计的总体思想飞机航班信息管理系统主要分为用户和系统管理员2类,因此也将该系统分为2个相应的大的功能模块。

用户可以通过服务项目选择查询相关航班情况,进行订票,退订等服务项目。

系统会将数据库中相应信息反馈给顾客。

系统管理员负责管系统信息的及时更新,可以根据航空公司航班的具体的情况更新数据库。

3.2系统模块结构图3.3数据库结构设计为了支持此飞机航班信息管理系统,创建数据库airplane manage,在这个数据库里包含三个表:flight information表,passenger表,managerlogin表,和passengerlogin 表,它们的截图如下:在flight information(飞机航班信息)表中,有8个属性列,分别为id(序列),stime(飞机起飞时间),etime(飞机到达时间),sadd(飞机起始点),eadd(飞机终点),znum (总票数),snum(剩余票数)。

Java课程设计报告-----飞机航班管理系统

Java课程设计报告-----飞机航班管理系统

.引言1.1 项目的名称飞机航班信息管理系统1.2 项目背景和目标飞机航班信息管理系统主要能够查询飞机的航班情况,飞行线路,票价,折扣等等情况,并能够在数据库中更新维护飞机航班的信息,对飞机航班数据库进行管理,如航班的增加,删除和修改等。

我们的目标就是为该系统提供后台连接数据库程序设计以及前台用户界面设计。

1.3 项目的可行性研究设计此系统需要java面向对象编程基础,数据库应用知识以及功能分析。

根据目前所开设的课程,学生已经具备这样的知识,有能力综合java 编程知识和数据库应用知识做出一个这样的飞机航班信息管理系统。

需求分析2. 1系统概述此系统提供给系统管理员和用户。

系统管理员登陆后可以对飞机航班信息进行管理,如:添加飞机航班信息,删除飞机航班信息,修改飞机航班属性。

用户登陆后能进行飞机航班信息查询,订票以及退订。

2. 2系统运行环境Java运行在eclipse软件上,数据库用mysql数据库2. 3功能需求描述用户选择相关的服务项目可以查看相关航班基本信息,并且可以根据自己需求选择相应服务,系统的信息更新时,相关的信息经过相应处理后,会存入到飞机航班数据库中的航班信息记录表中;系统管理员根据航空公司实际情况可以更新航班信息,并通过修改信息处理后被保存到飞机航班表中。

三、系统设计3.1开发与设计的总体思想飞机航班信息管理系统主要分为用户和系统管理员2类,因此也将该系统分为2个相应的大的功能模块。

用户可以通过服务项目选择查询相关航班情况,进行订票,退订等服务项目。

系统会将数据库中相应信息反馈给顾客。

系统管理员负责管系统信息的及时更新,可以根据航空公司航班的具体的情况更新数据库3.2系统模块结构图3. 3数据库结构设计为了支持此飞机航班信息管理系统,创建数据库airpla ne man age,在这个数据库里包含三个表:flight information 表,passenger 表,managerlogin 表,禾口passengerlogin 表,它们的截图如下:▼ airplane manage►flight information1 亠■■■■.»■■■■•>■■■ IBUJ ■■■■.UIBIIUHI►j^mdnogeilogirii►pn 洱unq&ikpiri►informat»on_schemak mys 甲►怡琳在flight in formation (飞机航班信息)表中,有8个属性列,分别为id (序列),stime (飞机起飞时间),etime (飞机到达时间),sadd (飞机起始点),eadd (飞机终点),znum (总票数),snum (剩余票数)。

航空订票系统课程设计

航空订票系统课程设计

航空订票系统课程设计一、课程目标知识目标:1. 让学生理解航空订票系统的基本概念,掌握其功能模块和工作原理。

2. 使学生掌握数据库查询、数据传递和数据处理的基本方法。

3. 帮助学生了解航空公司的运营策略和机票定价机制。

技能目标:1. 培养学生运用所学知识设计简单的航空订票系统,具备实际操作能力。

2. 培养学生分析问题、解决问题的能力,学会在实际项目中运用数据库技术。

3. 提高学生的团队协作能力,学会在项目中分工合作,共同完成任务。

情感态度价值观目标:1. 激发学生对计算机科学的兴趣,培养其主动学习的热情。

2. 培养学生的责任心,使其认识到严谨、细致的工作态度在项目实施中的重要性。

3. 增强学生的自信心,使其相信通过努力可以掌握复杂的计算机技术。

本课程针对高年级学生,结合航空订票系统课程特点,注重理论与实践相结合,旨在提高学生的实际操作能力和解决问题的能力。

课程目标具体、可衡量,以便学生和教师能够清晰地了解课程的预期成果,并为后续的教学设计和评估提供依据。

二、教学内容1. 航空订票系统概述:介绍航空订票系统的基本概念、发展历程和功能模块,结合课本第二章内容,让学生对航空订票系统有整体的认识。

2. 数据库查询与处理:讲解数据库的基本原理,以课本第四章内容为基础,教授SQL查询语句、数据传递和数据处理方法,为设计航空订票系统奠定基础。

3. 航空公司运营策略与机票定价机制:分析航空公司的运营策略,结合课本第五章内容,介绍机票定价机制,帮助学生了解行业背景。

4. 航空订票系统设计:根据课本第六章内容,详细讲解航空订票系统的设计方法,包括系统架构、模块划分、功能实现等,指导学生进行实际操作。

5. 实践项目:组织学生分组进行航空订票系统设计实践,结合前述章节内容,完成以下任务:a. 设计并实现一个简单的航空订票系统;b. 编写系统需求分析、设计说明书;c. 进行系统测试,确保系统功能的正确性和稳定性。

6. 教学进度安排:共安排10个课时,具体如下:a. 第1-2课时:航空订票系统概述;b. 第3-4课时:数据库查询与处理;c. 第5-6课时:航空公司运营策略与机票定价机制;d. 第7-8课时:航空订票系统设计;e. 第9-10课时:实践项目指导与展示。

基于Java和数据库系统设计的航空售票系统

基于Java和数据库系统设计的航空售票系统

基于Java和数据库系统设计的航空售票系统随着人们出行频率的增加,航空售票系统的重要性也越来越受到关注。

基于Java和数据库系统设计的航空售票系统可以满足用户乘机预订、机票查询、航班管理等需求,为用户提供更加便捷和高效的服务。

一、系统架构设计基于Java语言,我们可以采用MVC(Model-View-Controller)模式设计系统架构,将系统分为数据业务逻辑层(Model),界面层(View)和控制层(Controller)。

1.数据业务逻辑层(Model)数据业务逻辑层主要负责处理与数据库相关的操作,包括数据存储、更新、查询、删除等,为系统提供了基础数据支持。

在该层中,我们可以定义一些Java类,用于操作数据库。

可以使用JDBC等技术,连接数据库,并通过SQL语句实现数据库操作。

数据业务逻辑层还可以包含一些业务逻辑处理类,用于实现一些复杂的业务逻辑处理。

2.界面层(View)界面层主要负责用户界面的设计和展示。

在该层中,我们可以使用Swing或者javafx 等技术,实现界面设计。

在设计界面时,需要充分考虑用户的使用习惯和行为模式,提供友好的用户界面和良好的用户交互体验。

同时,也需要对用户输入的数据进行验证,确保输入数据的合法性,避免出现错误情况。

3.控制层(Controller)控制层主要负责协调界面层和数据业务逻辑层之间的交互行为,控制用户界面的展示和数据的操作。

该层中包含一些操作类,用于控制用户的行为,处理用户输入的数据,实现不同的业务逻辑。

二、数据模型设计在设计航空售票系统的数据模型时,需要考虑数据的实体和关系。

航空售票系统的数据实体包括航班、乘客、机场、座位、订单等。

1.航班航班是系统中最重要的实体之一,包括航班号、出发时间、起飞机场、到达机场、舱位等信息。

在数据库中,我们可以通过航班号来唯一标识一条航班信息。

2.乘客乘客是一种重要的数据实体,包括乘客姓名、证件号码、联系方式等信息。

基于Java和数据库系统设计的航空售票系统

基于Java和数据库系统设计的航空售票系统

基于Java和数据库系统设计的航空售票系统航空售票系统是一个复杂的软件系统,涉及到用户预订机票、航班信息管理、座位管理、票务管理、支付系统等多个模块。

本文将着重介绍基于Java和数据库系统设计的航空售票系统的整体架构和关键功能模块。

一、系统架构1.1 系统整体架构航空售票系统的整体架构可以分为三层:表示层、业务逻辑层和数据访问层。

- 表示层:负责与用户交互,包括用户界面展示、用户输入接收和响应等。

通常采用Web或移动应用作为表示层。

- 业务逻辑层:处理用户的请求,进行业务逻辑的处理,包括航班查询、订票、支付等。

- 数据访问层:负责与数据库进行交互,包括数据的读取、更新和删除等操作。

1.2 技术选型基于Java的航空售票系统可以采用Spring框架作为整体框架,通过Spring MVC实现表示层的功能,Spring IOC实现业务逻辑层的功能,MyBatis或Hibernate实现数据访问层的功能。

Java语言本身具有平台无关性和较好的跨平台兼容性,能够满足航空售票系统在不同平台上的部署需求。

二、系统功能模块2.1 用户模块用户模块包括用户注册、登录、个人信息管理等功能。

注册时需要验证用户输入的信息,并将用户信息存储到数据库中;登录时需要验证用户的身份信息,确保用户登录后能够进行相关操作;个人信息管理包括用户的个人资料和订单信息的展示和管理等。

2.2 航班查询模块航班查询模块允许用户根据出发地、目的地、日期等条件查询符合条件的航班信息。

系统需要从数据库中读取航班信息,并将符合条件的航班信息展示给用户。

2.3 订票模块订票模块允许用户选择符合条件的航班进行订票操作。

用户需要输入乘客信息、选择座位以及支付方式等。

系统需要对用户输入的信息进行验证,确保订单的合法性;在用户订票成功后,需要更新数据库中的座位信息和订单信息。

2.4 支付模块支付模块是航空售票系统中非常重要的一个模块。

用户在订票成功后需要进行支付操作,系统需要与第三方支付平台进行交互,完成支付流程。

java课程设计航班

java课程设计航班

java课程设计航班一、教学目标本课程旨在通过Java编程语言的学习,让学生掌握航班管理系统的基本设计和实现。

具体目标如下:知识目标:使学生了解Java编程语言的基本语法和结构;理解面向对象编程的基本概念;掌握常用数据结构及其在航班管理中的应用。

技能目标:培养学生具备使用Java编程语言进行简单程序设计的能力;能够运用面向对象编程思想进行程序设计;能够独立分析和解决航班管理中的问题。

情感态度价值观目标:培养学生对计算机科学的兴趣和热情,提高他们独立思考和解决问题的能力;使学生认识到编程在现代社会的重要性,培养他们的创新意识。

二、教学内容本课程的教学内容主要包括Java编程语言基础、面向对象编程、数据结构及其在航班管理系统中的应用。

具体安排如下:1.Java编程语言基础:介绍Java编程语言的基本语法、数据类型、运算符、控制结构等。

2.面向对象编程:讲解类和对象的概念,掌握封装、继承、多态等面向对象的基本特性。

3.数据结构:学习线性表、栈、队列、树等基本数据结构,并了解其在航班管理中的应用。

4.航班管理系统设计:通过案例分析,引导学生运用所学知识设计一个简单的航班管理系统。

三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法,以激发学生的学习兴趣和主动性。

1.讲授法:用于讲解基本概念、语法和原理,使学生掌握理论知识。

2.案例分析法:通过分析实际案例,让学生了解航班管理系统的应用,提高学生的实际操作能力。

3.实验法:安排实验课,让学生动手编写代码,培养学生的实际编程能力。

四、教学资源本课程所需教学资源包括教材、多媒体资料、实验设备等。

1.教材:选用权威、实用的Java编程教材,为学生提供系统性的知识学习。

2.多媒体资料:制作课件、视频等资料,丰富教学手段,提高学生的学习兴趣。

3.实验设备:提供计算机、网络等实验设备,确保学生能够进行实际操作。

五、教学评估本课程的评估方式包括平时表现、作业、考试等,以全面、客观、公正地评价学生的学习成果。

软件工程课程设计-机票预订系统

软件工程课程设计-机票预订系统

信息学院《软件工程课程设计》报告《软件工程课程设计》报告项目题目:机票预订系统班级:软件工程(java)11-03组长:张燚组员姓名:习鑫杨华杰张青松张亚恒赵迪郑莹亮- 1 -信息学院《软件工程课程设计》报告说明一、设计项目:机票预订系统二、采用的是面向对象设计的方法三、小组成员四、任务分配情况- 2 -信息学院《软件工程课程设计》报告目录一、可行性分析报告 (6)1.1引言 (6)1.2可行性研究的前提 (6)1.2.1要求 (6)1.2.2目标 (6)1.2.3条件,假定和限制 (6)1.2.4可行性研究方法 (6)1.2.5决定可行性的主要因素 (6)1.3技术可行性分析 (7)1.3.1系统简要描述 (7)1.3.2处理流程和数据流程 (7)1.4经济可行性分析 (7)1.4.1支出 (7)1.4.2效益 (8)1.4.3收益/投资比 (8)1.4.4投资回收周期 (8)1.4.5敏感性分析 (8)1.5社会因素可行性分析 (8)1.5.1法律因素 (8)1.5.2用户使用可行性 (9)1.6其他可供选择的方案 (9)1.6.1客户端与服务器端联系在一起 (9)1.7结论意见 (9)二、项目开发目的和意义 (9)2.1 项目来源 (9)2.2 项目开发目的和意义 (10)2.3 项目完成情况 (10)2.4开发环境和开发工具 (10)2.5相关技术及方法 (10)三系统需求分析、设计及实现 (10)- 3 -信息学院《软件工程课程设计》报告3.1机票预定系统的功能要求 (11)3.2、客户端子系统: (12)3.3.服务器端的功能要求 (12)3.4、机票预定系统的性能需求 (13)3.5机票预定系统的数据需求 (14)3.6机票预定系统的数据字典 (15)3.7机票预定系统的逻辑模型 (16)3.8机票预定系统的运行要求 (17)四、总体设计方案 (17)4.1 处理流程 (17)4.1.1 客户机程序流程 (18)4.1.2 服务器程序流程 (18)4.2 总体结构和模块外部设计 (18)4.2.1 客户机部分 (19)4.2.2 服务器程序部分 (19)4.3 功能分配 (20)五、详细设计及实现 (20)5.1软件结构 (20)5.2、程序描述 (23)5.2.1 客户机接受信息模块 (23)5.2.2客户机输出信息模块 (26)5.3网络接受和发送模块结构 (28)5.4服务器模块 (30)六.软件测试 (31)6.1、软件编码 (31)6.1.1登录模块 (32)6.1.2查询模块 (32)6.1.3机票预订模块 (34)6.2、软件测试 (34)6.2.1测试计划 (34)6.2.2测试内容 (37)6.2.3测试总结 (37)七、总结 (38)- 4 -信息学院《软件工程课程设计》报告附件一 (39)用户使用说明: (39)- 5 -一、可行性分析报告1.1引言。

本科毕业论文---航空订票系统 航空客运订票系统设计 航空订票管理系统

本科毕业论文---航空订票系统 航空客运订票系统设计 航空订票管理系统

摘要航空定票系统是使用JAVA编程技术在MYEclipse6.0集成开发环境下开发的订票系统。

该系统实现了航班管理、订票管理、退票管理以及查询航班等功能。

在航班管理中航空公司内部管理员能在系统中完成添加航班或删除航班、更新航班信息、查看数据库等功能。

乘客能够在系统中完成查询航班、订票办理和退票办理等功能。

乘客可以用多种方式来查询航班信息,也可以根据实际需要来订票(单程、往返、联程)。

系统还能将这些信息保存在数据库中,并供航空公司内部管理员随时查询。

关键词:航空定票系统,JAVA,MYEclipse6.0,定票,退票AbstractThe aviation settles a ticket system is use a JAVA plait distance's technique integrated in the MYEclipse6.0 develop under the environment develop of book a system.That system carries out a service a management and books a management, dishonor bill management and searches a service etc. function.The airline internal managing person can complete to add a service or delete a service, renew a service information and look into a database in the system in the service the management etc. function.The passenger can complete a search service and book a ticket to carry out to carry out with dishonor bill in the system etc. function.The passenger can search a service information with various ways, can also book a ticket according to the effective demand.(one way, go back and forth, allied distance)The system returns an ability will these the information keep in the database, and provide an airline the internal managing person searches at any time.Keywords:The aviation settles a system,JAVA, MYEclipse6.0, settle a ticket, dishonor bill目录摘要 (I)Abstract ...................................................................................................................................................................... I I 第1章绪论 . (1)第2章系统功能介绍 (2)2.1系统功能总框图 (2)2.2 本人模块功能介绍 (2)2.2.1 航班管理功能介绍 (2)2.2.2 查询航班功能介绍 (2)2.2.3 订票办理功能介绍 (3)2.2.4 退票办理功能介绍 (3)2.2.5 连接数据库介绍 (3)2.3 组内任务分工 (4)第3章数据库设计 (5)第4章系统功能实现 (7)4.1 航班管理功能实现 (7)4.2 查询航班功能实现 (27)4.3 订票办理功能实现 (45)4.4 退票办理功能实现 (65)4.5 连接数据库实现 (82)结论 (90)致谢 (91)参考文献 (92)第1章绪论航空定票系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的航空定票系统,实现旅行社的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。

航空订票系统详细设计

航空订票系统详细设计

详细设计报告一、引言1.1 编写目的:本阶段在系统的需求分析的基础上,对航空订票系统做详细设计。

主要解决了实现该系统程序模块具体设计问题。

包括确定算法,数据结构,模块接口的使用,数据库的动态操作以及界面设计等。

在以下的概要设计报告中将对在本阶段中对系统所做的所有详细设计进行详细的说明。

在下一阶段的编码过程中,程序设计员可参考此详细设计报告,在详细设计对机票预定系统所做的算法设计,数据结构以及数据库动态操作的基础上,对系统进行编码。

1.2 项目背景:开发软件名称:航空订票系统。

用户:航空公司运行环境:宿舍电脑。

开发平台:MyEclipse 7.0 PostgreSql数据库。

系统架构:该系统采用java+jsp框架1.3 定义:查询:对数据库的操作的一种,用于搜索数据信息。

插入:对数据库的操作的一种,用于将数据存入数据库中。

更新:对数据库的操作的一种,用于更改数据库中的数据信息。

PostgreSql: 系统服务器所使用的数据库管理系统〔DBMS〕。

SQL: 一种用于访问查询数据库的语言事务流:数据进入模块后可能有多种路径进行处理。

主键:数据库表中的关键域。

值互不相同。

外部主键:数据库表中与其他表主键关联的域。

1.4 参考资料:需求分析说明书软件开发小组软件工程齐治昌谭庆平宁洪等高等教育实用软件工程郑人杰等,清华大学。

二、总体设计2.1 需求概述航空订票系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。

具体功能为用户把预定机票的旅客信息〔##、性别、##〔护照〕、乘坐时间、出行始发地和目的地等〕输入到系统中,系统为旅客安排航班。

当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。

java课程设计航空售票系统

java课程设计航空售票系统

java课程设计航空售票系统一、教学目标本章节的教学目标是使学生掌握Java编程语言的基本语法和面向对象编程思想,能够运用Java实现一个简单的航空售票系统。

具体目标如下:1.知识目标:–掌握Java基本数据类型、运算符、控制结构。

–理解面向对象编程的基本概念,如类、对象、封装、继承、多态。

–熟悉Java集合框架,如List、Set、Map等。

–掌握Java常用API,如String、Math、System等。

2.技能目标:–能够使用Java编写简单的程序,实现基本的数据处理和算法。

–能够运用面向对象编程思想,设计并实现具有封装、继承、多态特点的类。

–能够使用Java集合框架处理数据。

–能够阅读和理解JavaAPI文档,查找并使用合适的API解决问题。

3.情感态度价值观目标:–培养学生对编程语言的兴趣,树立编程信心。

–培养学生团队协作、自主学习的能力。

–培养学生面对问题时,积极思考、解决问题的态度。

二、教学内容根据教学目标,本章节的教学内容如下:1.Java基本语法:数据类型、运算符、控制结构。

2.面向对象编程:类与对象、封装、继承、多态。

3.Java集合框架:List、Set、Map的使用。

4.Java常用API:String、Math、System等。

5.航空售票系统的设计与实现。

三、教学方法本章节采用以下教学方法:1.讲授法:讲解Java基本语法、面向对象编程思想、集合框架和常用API。

2.案例分析法:分析航空售票系统的需求,引导学生运用Java知识解决问题。

3.实验法:让学生动手编写代码,实现航空售票系统。

4.小组讨论法:分组进行讨论,分享学习心得和解决问题的方法。

四、教学资源本章节所需教学资源如下:1.教材:《Java编程思想》、《Java核心技术》等。

2.参考书:《Java Web开发实战》、《Java EE高级编程》等。

3.多媒体资料:PPT、教学视频、在线课程等。

4.实验设备:计算机、网络环境等。

Java课程设计-----飞机航班管理系统解读

Java课程设计-----飞机航班管理系统解读

一.引言1.1项目的名称飞机航班信息管理系统1.2项目背景和目标飞机航班信息管理系统主要能够查询飞机的航班情况,飞行线路,票价,折扣等等情况,并能够在数据库中更新维护飞机航班的信息,对飞机航班数据库进行管理,如航班的增加,删除和修改等。

我们的目标就是为该系统提供后台连接数据库程序设计以及前台用户界面设计。

1.3项目的可行性研究设计此系统需要java面向对象编程基础,数据库应用知识以及功能分析。

根据目前所开设的课程,学生已经具备这样的知识,有能力综合java编程知识和数据库应用知识做出一个这样的飞机航班信息管理系统。

二、需求分析2.1系统概述此系统提供给系统管理员和用户。

系统管理员登陆后可以对飞机航班信息进行管理,如:添加飞机航班信息,删除飞机航班信息,修改飞机航班属性。

用户登陆后能进行飞机航班信息查询,订票以及退订。

2.2系统运行环境Java运行在eclipse软件上,数据库用mysql数据库2.3功能需求描述用户选择相关的服务项目可以查看相关航班基本信息,并且可以根据自己需求选择相应服务,系统的信息更新时,相关的信息经过相应处理后,会存入到飞机航班数据库中的航班信息记录表中;系统管理员根据航空公司实际情况可以更新航班信息,并通过修改信息处理后被保存到飞机航班表中。

三、系统设计3.1开发与设计的总体思想飞机航班信息管理系统主要分为用户和系统管理员2类,因此也将该系统分为2个相应的大的功能模块。

用户可以通过服务项目选择查询相关航班情况,进行订票,退订等服务项目。

系统会将数据库中相应信息反馈给顾客。

系统管理员负责管系统信息的及时更新,可以根据航空公司航班的具体的情况更新数据库。

3.2系统模块结构图飞机航班信息管理系统系统管理员模块用户模块信息查询订票退订添加飞机航班信息删除飞机航班信息修改飞机航班信息系统管理员登录用户登录3.3数据库结构设计为了支持此飞机航班信息管理系统,创建数据库airplane manage,在这个数据库里包含三个表:flight information表,passenger表,managerlogin表,和passengerlogin表,它们的截图如下:在flight information(飞机航班信息)表中,有8个属性列,分别为id(序列),stime (飞机起飞时间),etime(飞机到达时间),sadd(飞机起始点),eadd(飞机终点),znum (总票数),snum(剩余票数)。

java课程设计 航空订票管理系统设计

java课程设计 航空订票管理系统设计

xx《面向对象程序设计》课程设计报告题目:xx专业:xx班级:x姓名:xx指导教师:x成绩:xxxx年 x月x日目录1 设计内容及要求 (1)1.1 设计任务及要求 (1)1.2硬件可靠性 (1)1.3系统运行的稳定性 (1)1.4系统功能齐全、开放性好 (1)2 需求分析 (2)2.1 数据的输入 (2)2.2 数据的修改 (2)2.3 数据的删除 (2)2.4 数据的查询 (2)3 概要设计 (3)3.1系统用例图 (3)3.2用例描述 (3)3.3 基本描述 (4)3.4 功能 (4)3.5 算法 (5)3.5 流程逻辑 (6)4系统数据结构设计 (11)4.1 逻辑结构设计要点 (11)4.2 物理结构设计要点 (11)4.3 数据结构及程序的关系 (12)4.4 数据库分析 (12)4.5 程序系统的组织结构 (14)6 系统运行效果及操作 (16)参考文献: (36)1 设计内容及要求1.1 设计任务及要求对航空公司来说,航空订票管理系统既能扩大服务范围,扩大公司影响,减少营业费用,又对稳固航空公司的客源有着重要的辅助作用;站在旅客的角度,航空公司提供的这种服务提供了更多的方便,节省了很多时间。

建设航空订票管理系统是体现和提高航空公司领导业绩的一条捷径,此外还具有重要意义:1、改善航空公司服务质量;2、创造和提升航空公司的品牌优势;3、优化航空公司的服务流程;4、提升信息化的水平;1.2硬件可靠性数据库服务器:数据库服务器用于存放用户及航班信息等资料,配一台专用服务器,安装数据库SQL server2000。

1.3系统运行的稳定性系统支持操作系统如下:Windows vista、Windows XP(服务器版本)(推荐)或Windows 2000,系统运行稳定可靠,可以保证365天*24小时的不间断运行,并安装杀毒软件,防止病毒的干扰,保证系统的运行稳定。

SQL Server数据库服务器版, 可以存储管理大量数据信息1.4系统功能齐全、开放性好订票,退票,查询,管理等业务,全部使用软件来控制,因此今后功能变动、业务改动很灵活。

java课程设计航空

java课程设计航空

java课程设计航空一、教学目标本章节的教学目标包括以下三个方面:1.知识目标:使学生掌握Java编程语言的基本语法和编程技巧,了解面向对象编程的基本概念和方法。

2.技能目标:培养学生具备使用Java语言进行程序设计的能力,能够独立完成简单的Java应用程序。

3.情感态度价值观目标:培养学生对计算机科学的兴趣和热情,提高学生解决问题的能力和创新精神。

二、教学内容本章节的教学内容主要包括以下几个方面:1.Java编程语言的基本语法和编程技巧,包括变量、数据类型、运算符、控制结构等。

2.面向对象编程的基本概念和方法,包括类、对象、封装、继承、多态等。

3.Java应用程序的开发和运行过程,包括编写代码、编译、调试和运行等。

三、教学方法本章节的教学方法采用以下几种方式:1.讲授法:通过讲解和演示,使学生掌握Java编程语言的基本语法和编程技巧。

2.案例分析法:通过分析典型案例,使学生了解面向对象编程的基本概念和方法。

3.实验法:让学生动手编写Java程序,培养学生的编程能力和实践能力。

四、教学资源本章节的教学资源包括以下几个方面:1.教材:选用《Java编程思想》作为主要教材,辅助学生掌握Java编程语言的基本语法和编程技巧。

2.多媒体资料:提供Java编程语言的在线教程和视频教程,方便学生随时查阅和学习。

3.实验设备:提供计算机实验室,让学生进行Java程序的编写和运行。

五、教学评估本章节的教学评估主要包括以下几个方面:1.平时表现:通过课堂参与、提问、讨论等环节,评估学生的学习态度和积极性。

2.作业:布置课后作业,评估学生的编程能力和对知识的理解程度。

3.考试:进行期中和期末考试,全面考察学生的知识掌握和应用能力。

评估方式应客观、公正,能够全面反映学生的学习成果。

通过评估,教师可以了解学生的学习情况,及时进行教学调整,提高教学效果。

六、教学安排本章节的教学安排如下:1.教学进度:按照教材的章节顺序进行教学,确保学生系统地掌握Java编程语言。

基于Java和数据库系统设计的航空售票系统

基于Java和数据库系统设计的航空售票系统

基于Java和数据库系统设计的航空售票系统【摘要】本文介绍了基于Java和数据库系统设计的航空售票系统。

在概述了系统的设计目的和背景。

正文部分涵盖了系统架构设计、数据库设计、用户界面设计、售票流程设计和安全性设计。

系统采用Java作为开发语言,并结合数据库实现数据管理和操作。

用户界面设计简洁友好,售票流程设计流畅高效。

安全性设计确保用户信息和支付安全。

在结论部分总结了系统的设计特点和优势,并展望了未来的发展方向。

航空售票系统的建立将为航空公司提供更便捷的售票服务,提升用户体验,具有重要的现实意义。

【关键词】航空售票系统、Java、数据库系统、系统架构设计、数据库设计、用户界面设计、售票流程设计、安全性设计、总结、展望、意义。

1. 引言1.1 概述航空售票系统是一个基于Java和数据库系统设计的系统,旨在为用户提供便捷、高效的机票预订和购买服务。

随着航空业的快速发展,人们对航空运输的需求越来越大,传统的售票方式已经无法满足用户的需求。

设计一个高效、可靠的航空售票系统显得尤为重要。

本系统将采用Java作为主要开发语言,数据库系统作为数据存储和管理的工具,通过系统架构设计、数据库设计、用户界面设计、售票流程设计和安全性设计等方面的全面考虑,实现一个功能强大、操作简单、安全可靠的航空售票系统。

在这个系统中,用户可以方便地浏览不同航班的信息,查看座位预订情况,并完成机票购买的整个流程。

系统还将提供安全保障机制,确保用户的个人信息和支付信息的安全。

通过本系统的设计和实现,用户可以享受更便捷、更快速的机票购买服务,提升航空售票系统的效率和用户体验,为航空运输行业的发展做出贡献。

1.2 背景航空售票系统是一种基于计算机和网络技术的智能化售票系统,为乘客提供了方便、快捷、安全的航班预订和购票服务。

随着航空业的快速发展和人们对出行需求的不断增加,传统的人工售票方式已经无法满足市场需求。

利用Java编程语言和数据库系统设计一个航空售票系统,成为当前航空业发展的必然选择。

Java课程设计-----飞机航班管理系统

Java课程设计-----飞机航班管理系统

交互体验:交互 体验流畅,易于 用户快速完成操 作
Part Three
查询功能:根据航班号、出发地、 目的地等信息查询航班信息
预订功能:在线预订航班,支持多 种支付方式
添加标题
添加标题
添加标题
添加标题
筛选功能:根据航班时间、航空公 司、舱位等级等信息筛选航班
提醒功能:设置航班提醒,包括起 飞前、到达前等提醒
系统测试:对 整个系统进行 测试,确保系
统满足需求
性能测试:测 试系统的性能 指标,如响应 时间、吞吐量

安全测试:测 试系统的安全 性,如数据加 密、用户认证

用户体验测试: 测试系统的用 户体验,如界 面友好性、易
用性等
优化目标:提高系统运行效率,降低资源消耗 优化方法:采用先进的算法和优化技术,如并行计算、分布式计算等 优化效果:提高系统处理速度,降低响应时间,提高系统稳定性和可靠性 优化周期:定期进行系统性能评估和优化,确保系统持续优化和改进
性能优化:通过优化数据库连接技术,提高系统的性能和稳定性。
安全性:通过加密、认证等技术,保证数据库连接的安全性。
前端框架:React、Vue.js等
云服务:AWS、Azure等
后端框架:Node.js、Spring Boot等
测试工具:Jest、Mocha等
数据库:MySQL、MongoDB等
持续集成:Jenkins、Travis CI 等
航班取消原因:天气、机械故障、航空公司原因等 取消流程:通知乘客、更新航班状态、处理退款等 取消通知方式:短信、邮件、电话等 取消后处理:提供替代航班、协助乘客改签等
功能:提供航班改签服务
操作流程:用户选择需要改 签的航班,输入新的航班信 息,系统自动处理改签请求

java航空订票系统毕业设计

java航空订票系统毕业设计

java航空订票系统毕业设计(此文档为word格式,下载后您可任意编辑修改!)本科毕业论文java 航空订票系统学院:计算机与信息工程学院专业: 05计科双学位姓名:周楷指导教师:李建荣职称:・・・・论文提交日期:二ОО八年四月摘要当前中国民航市场扩大迅速,随着生活水平的提高,越来越多的人选择飞机出行,对航空公司的服务要求的越来越高,为了适应快速发展的需求,管理大量数据,有效地稳定的管理航空公司,我们要为某航空公司开发一套国内机票售票系统,要求能通过分布在全国各主要城市的该航空公司的营业网点为顾客提供航班查询,购买机票以及退票的服务。

该系统的工作流程如下:当顾客到达营业网点后向航空公司营业员提供出发地,目的地和出发日期,营业员根据以上信息,操作软件,连接航空公司的服务器,查询满足条件的航班,然后根据顾客的要求选择某个航班,输入乘客信息,以及舱位信息,然后执行出票操作。

该系统在营业网点内能够完成营业员登录,查询航班,出票等功能。

在航空公司内部能够完成添加或删除航班,添加或删除营业网点,添加或删除营业员等功能。

除此之外,该系统还要求能统计每个营业网点的业务量,以及每位营业员的工作量,并将这些信息保存在服务器端,并能在服务器端随时查询。

关键词:民航管理系统分层部署AbstractThe current Chinese commercial aviation expansion of market is rapid, along with the living standard enhancement, more and more many people chooses theairplane journey, to airline's service request more and more order to adapt the fast development demand, the management mass datas, the stable management airline, we must develop a set of domestic airplane ticket booking system effectively for some airline, the request can through distribute provide the scheduled flight inquiry in the national each main city this airline's business mesh point for the customer, the service which the purchase airplane ticket as well as returns a ticket.This system work flow is as follows: When the customer arrives business mesh point backward airline shop employees to provide embarks above, the destination and embarks the date, the shop employee according to the information, operates the software, the connection airline's server, the inquiry satisfies the condition thescheduled flight, then chooses some scheduled flight according to customer's request, inputs the passenger information, as well as the seat on a ship information, then the execution shows a ticket the operation.This system can complete the shop employee in business mesh point to register, the inquiry scheduled flight, shows a ticket and so on the functions.Can complete the increase or the deletion scheduled flight in the airline interior, the increase or the deletion business mesh point, the increase or deletes functions and so on shop employee.In addition, this system also requests to be able to count eachbusiness mesh point the business volume, as well as each shop employee's work load, and these information preservation in the server end, and can inquire as necessary in the server end.Key words :The commercial aviation the management system management system thelamination deployment目录1.引言1.1民航发展概况 1.2 技术选择 1.3 开发工具1.2.1CS与BS 1.2.2java技术1.3 技术选择2.需求分析:2.1软件分层与部署: 2.2系统功能模块: 2.3系统活动图: 2.3用例图:2.3.1客户端用例: 2.3.2服务器端用例: 3.概要设计: 3.1业务模型:3.2数据库设计3.2.1飞机机型表(AIRPLANE_MODEL): 3.2.2航班计划表(FLIGHT_SCHEDULER): 3.2.3航班表(FLIGHT): 3.2.4营业网点表(BRANCH): 3.2.5出票记录表(TICKET_ORDER):3.3DAO接口设计 3.3.1FlightDAO: 3.3.2BranchDAO:3.3.3TicketOrderDAO: 3.4主要工作流程: 3.5详细时序图4.详细设计4.1流程详细分析4.2用表格显示表单4.3构件技术等,使 BS更加成熟.4.软件重用不同CS 程序可以不可避免的整体性考虑, 构件的重用性不如在BS要求下的构件的重用性好.BS 对的多重结构,要求构件相对独立的功能. 能够相对较好的重用.就入买来的餐桌可以再利用,而不是做在墙上的石头桌子5.系统维护不同CS 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统BS 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.6.处理问题不同CS 程序可以处理用户面固定, 并且在相同区域, 安全要求高需求, 与操作系统相关. 应该都是相同的系统BS 建立在广域网上, 面向不同的用户群, 分散地域, 这是CS无法作到的. 与操作系统平台关系最小.7.用户接口不同CS 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高BS 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流. 并且大部分难度减低,减低开发成本.8.信息流不同CS 程序一般是典型的中央集权的机械式处理, 交互性相对低BS 信息流向可变化, B-B B-C B-G等信息、流向的变化, 更象交易中心 1.2.2Java技术Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。

Java课程设计-----飞机航班管理系统

Java课程设计-----飞机航班管理系统

一.引言1.1项目的名称飞机航班信息管理系统1.2项目背景和目标飞机航班信息管理系统主要能够查询飞机的航班情况,飞行线路,票价,折扣等等情况,并能够在数据库中更新维护飞机航班的信息,对飞机航班数据库进行管理,如航班的增加,删除和修改等。

我们的目标就是为该系统提供后台连接数据库程序设计以及前台用户界面设计。

1.3项目的可行性研究设计此系统需要java面向对象编程基础,数据库应用知识以及功能分析。

根据目前所开设的课程,学生已经具备这样的知识,有能力综合java编程知识和数据库应用知识做出一个这样的飞机航班信息管理系统。

二、需求分析2.1系统概述此系统提供给系统管理员和用户。

系统管理员登陆后可以对飞机航班信息进行管理,如:添加飞机航班信息,删除飞机航班信息,修改飞机航班属性。

用户登陆后能进行飞机航班信息查询,订票以及退订。

2.2系统运行环境Java运行在eclipse软件上,数据库用mysql数据库2.3功能需求描述用户选择相关的服务项目可以查看相关航班基本信息,并且可以根据自己需求选择相应服务,系统的信息更新时,相关的信息经过相应处理后,会存入到飞机航班数据库中的航班信息记录表中;系统管理员根据航空公司实际情况可以更新航班信息,并通过修改信息处理后被保存到飞机航班表中。

三、系统设计3.1开发及设计的总体思想飞机航班信息管理系统主要分为用户和系统管理员2类,因此也将该系统分为2个相应的大的功能模块。

用户可以通过服务项目选择查询相关航班情况,进行订票,退订等服务项目。

系统会将数据库中相应信息反馈给顾客。

系统管理员负责管系统信息的及时更新,可以根据航空公司航班的具体的情况更新数据库。

3.2系统模块结构图3.3数据库结构设计为了支持此飞机航班信息管理系统,创建数据库airplane manage,在这个数据库里包含三个表:flight information表,passenger表,managerlogin表,和passengerlogin表,它们的截图如下:在flight information(飞机航班信息)表中,有8个属性列,分别为id(序列),stime(飞机起飞时间),etime(飞机到达时间),sadd (飞机起始点),eadd(飞机终点),znum(总票数),snum(剩余票数)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《面向对象程序设计》课程设计报告题目: xx 专业: xx 班级: x 姓名: xx 指导教师: x成绩:xxxx 年 x 月x 日xx目录1 设计内容及要求 (1)1.1 设计任务与要求 (1)1.2硬件可靠性 (1)1.3系统运行的稳定性 (1)1.4系统功能齐全、开放性好 (1)2 需求分析 (2)2.1 数据的输入 (2)2.2 数据的修改 (2)2.3 数据的删除 (2)2.4 数据的查询 (2)3 概要设计 (3)3.1系统用例图 (3)3.2用例描述 (3)3.3 基本描述 (4)3.4 功能 (4)3.5 算法 (5)3.5 流程逻辑 (6)4系统数据结构设计 (11)4.1 逻辑结构设计要点 (11)4.2 物理结构设计要点 (11)4.3 数据结构与程序的关系 (12)4.4 数据库分析 (12)4.5 程序系统的组织结构 (14)6 系统运行效果与操作 (16)参考文献: (36)1 设计内容及要求1.1 设计任务与要求对航空公司来说,航空订票管理系统既能扩大服务范围,扩大公司影响,减少营业费用,又对稳固航空公司的客源有着重要的辅助作用;站在旅客的角度,航空公司提供的这种服务提供了更多的方便,节省了很多时间。

建设航空订票管理系统是体现和提高航空公司领导业绩的一条捷径,此外还具有重要意义:1、改善航空公司服务质量;2、创造和提升航空公司的品牌优势;3、优化航空公司的服务流程;4、提升信息化的水平;1.2硬件可靠性数据库服务器:数据库服务器用于存放用户及航班信息等资料,配一台专用服务器,安装数据库SQL server2000。

1.3系统运行的稳定性系统支持操作系统如下:Windows vista、Windows XP(服务器版本)(推荐)或Windows 2000,系统运行稳定可靠,可以保证365天*24小时的不间断运行,并安装杀毒软件,防止病毒的干扰,保证系统的运行稳定。

SQL Server数据库服务器版, 可以存储管理大量数据信息1.4系统功能齐全、开放性好订票,退票,查询,管理等业务,全部使用软件来控制,因此今后功能变动、业务改动很灵活。

2 需求分析2.1 数据的输入管理员根据需要来输入航班、订票人、乘客等信息的具体数据,但必须保证其正确性和准确性。

2.2 数据的修改管理员根据需要对指定的数据进行修改,由于记录繁多,因此用户首先要输入一定的查询条件,缩小记录范围,然后再从该范围中找到指定的记录进行修改,保证修改的内容的正确性和准确性后可更新数据库的数据。

2.3 数据的删除管理员根据需要对指定的数据进行删除,由于记录繁多,因此用户首先要输入一定的查询条件,缩小记录范围,然后再从该范围中找到制定的记录进行删除,保证将要删除的内容的正确性和准确性后可删除掉数据库中的数据。

2.4 数据的查询管理员根据需要查询数据库中的所有数据,输入一定的查询条件,然后可按照输入的查询依据查询新数据库的数据。

3 概要设计3.1系统用例图图 1 系统用例图3.2用例描述(1)航班查询查看航班信息基本查询,从下拉列表中选择航班或起点或终点信息综合查询,手动输入航班的基本信息(2)订票输入航班信息显示航班信息,以及打折后的票价信息,询问信息是否(3)退票输入将退票的序号显示票的具体信息,并询问是否退票退票成功,更新顾客数据库(4)管理登陆进入管理界面选择添加、更新、删除航班,或查看航班具体信息等业务添加输入添加航班的具体信息更新航班数据库更新输入所要更改航班的具体信息更新航班数据库删除选择所要删除的航班更新航班数据库查看航班具体信息显示数据库中所有航班的具体信息3.3 基本描述(1)服务器端程序:本套航空订票系统软件的服务器端应用程序,使用java编写前台控制软件,管理员通过使用该软件来进行对数据库中的数据进行管理。

(2)后台数据库:本套航空订票系统软件的后台数据库使用Microsoft SQL Server 2000来搭建后台数据库服务器,用来存放所有的数据。

3.4 功能(1)服务器端的主要功能订票信息的查询功能:1)查询航班信息包括航班号、地点等信息。

2)查询及票价格包括起始地、抵达地、、机票价格等信息。

3)查询订票人的详细信息:精确查询:输入订票人身份证号码查询订票人详细信息。

模糊查询:输入订票人的姓名(或订票人的姓或是年龄或是性别)查询出一系列相关的信息,然后可从小范围内找到订票人的详细信息。

4)查询乘客的详细信息:输入乘客的身份证号码查询乘客的详细信息。

1)填写订票人的详细信息其中包括:姓名、身份证号码、联系电话、地址等信息。

2)填写订票的详细信息,其中包括:航班编号、订票时间、订票数量等信息。

录入信息功能1)取票功能:根据输入的订票人身份证号验证订票人身份后,输入详细的乘客信息并进行保存。

2)直接购票:直接输入乘客详细信息并保存(不通过订票人)。

3)录入航班信息:录入航班的相关信息。

4)订票人取消订票:保存订票人取消订票信息。

④修改功能1)修改乘客信息:将查找到的乘客信息,进行修改,然后进行保存。

2)修改订票人信息:将查找到的订票人的信息进行修改然后进行保存。

3)修改航班信息:将查找到的航班信息进行修改后保存。

⑤删除功能1)删除乘客信息:将查找到的乘客信息,进行删除。

2)删除订票人信息:将查找到的订票人的信息进行删除。

3)删除航班信息:将查找到的航班信息进行删除。

3.5 算法1)将管理员输入的数据,按字段保存到数据库中。

2)将数据库中的数据,按字段提取到用户界面中。

3)必要的去除重复项的算法。

4)按条件修改、删除数据中的数据。

5)保持表间数据的一致性。

3.5 流程逻辑(1)服务器端各模块的流程图查询模块流程图图 2 服务器查询模块添加模块流程图图 3 服务器添加模块修改模块流程图图 4 服务器修改模块删除模块流程图开始运行是否继续运行程序初始选择要删除的内容是判断数据是否符合规定删除数据结束删除功能图 5 服务器删除模块(2)客户端各模块的流程图查询模块的流程图图 6 客户端查询模块订票模块的流程图开始运行是否继续运行程序初始输入相应的订票人的信息将数据添加到数据库判断数据是否符合规定结束添加功能不符合是符合图7 客户端添加模块4系统数据结构设计4.1 逻辑结构设计要点按照需求分析设计数据库中的字段,建立一个逻辑上的数据库的结构。

4.2 物理结构设计要点在数据库软件(SQL Server2000)中建立数据库,并要保证数据库最低要符合第二范式。

4.3 数据结构与程序的关系(1)静态数值需求支持并行操作的用户。

处理多条记录数据。

表或文件的最小为2048字节,最大无限制。

(2)精度需求在进行提取数据库数据时,要求数据记录定位准确,在向数据库中添加数据时,要求输入数据准确。

主要的精度适应系统要求,不接受违规操作。

(3)时间特性需求响应时间应在人的感觉和视觉事件范围内;更新处理时间,随着应用软件的版本升级,以及网络的定期维护更新。

(4) 灵活性当需求发生某些变化时,管理应用软件操作方式、数据结构、运行环境基本不会发生变化,变化只是将对应的数据库文件内的记录改变,或将过滤条件改变即可。

(5) 数据管理能力需求本应用软件可管理多条记录,本应用软件基本约用1,300千字节空间,所有文件均放置在数据库中调用,查询数据、文件、记录时,通过库文件名直接进行操作或通过存储过程来完成操作。

4.4 数据库分析(1)数据表建立需将数据库设计成关系模式最低符合第二范式的标准。

按照需求分析,确定系统的实体。

根据实体分析的结果,在数据库中应建立如下数据表:adtor(管理员表)Flight(航班信息表)destine(客户信息表)④user(用户信息表)(2)数据库设计说明destine(订票人信息表)在该信息表中包含以下字段:destine_id(订票人身份证号码)、flight_no(航班号)、destine_count(订票数量)、destine_date(定票日期)、destine_status(订票状态)、destine _id (订票人身份证号码)、destine_phone(订票人联系电话)、destine_address(订票人地址)、destine_sex(订票人性别)、destine_age(订票人年龄)等字段。

flight(航班信息表)在该信息表中包含以下字段:flight_no(航班号)、begin_from(起飞地点)、end_address(降落地点)、begin_time(起飞时间)、end_time(降落时间) ticket_price(机票价格)等字段。

(3)数据库ER图图8 数据库ER图4.5 程序系统的组织结构(1)系统组织结构图服务器端的组织结构图图9 系统层次结构图6 系统运行效果与操作图10 主操作界面代码如下:package flight;import java.awt.GridLayout;import javax.swing.*;import java.awt.event.*;public class Register extends JFrame implements ActionListener{ JTextField user;JPasswordField psw1,psw2;JLabel a,b,c;JButton ok,no;public Register(){a=new JLabel("订票");a.setBounds(70,70,60,25);b=new JLabel("管理");b.setBounds(77,130,60,25);c=new JLabel("退出");c.setBounds(60,190,60,25);user=new JTextField(20);user.setBounds(130,70,180,25);psw1=new JPasswordField(20);psw1.setBounds(130,130,180,25);psw2=new JPasswordField(20);psw2.setBounds(130,190,180,25);add(a);add(user);add(b);add(psw1);add(c);add(psw2);setLayout(null);setBounds(100,200,500,350);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setResizable(false);setVisible(true);}public void actionPerformed(ActionEvent e){String a,b,c;if (e.getSource() == ok) {a=user.getText();b=psw1.getText();c=psw2.getText();dispose(); //关闭窗口System.exit(0); //退出程序}}图11 用户登录界面代码如下:public class AdminLogin extends JFrame implements ActionListener{database datalink;JTextField input1;JPasswordField input2;JLabel prompt1;JLabel prompt2;JButton ok;public AdminLogin() {super("管理员登陆");setSize(400, 100);Dimension size = Toolkit.getDefaultToolkit().getScreenSize();setLocation((size.width - getWidth()) / 2,(size.height - getHeight()) / 2);setLayout(new FlowLayout());prompt1 = new JLabel(" 账号:");prompt2 = new JLabel(" 密码:");input1 = new JTextField(8);input2 = new JPasswordField(8);ok = new JButton("确定");ok.setSize(50, 100);ok.addActionListener(this);add(prompt1);add(input1);add(prompt2);add(input2);add(ok);datalink=new database();setVisible(true);}public void actionPerformed(ActionEvent e){if(e.getSource()==ok){if(input1.getText().length()==0||input2.getText().length()==0){JOptionPane.showMessageDialog(this,"请输入用户名或密码!","提示错误",JOptionPane.ERROR_MESSAGE);}else {try{boolean b=true;Connection con=datalink.getCon();Statement stm=datalink.getStm();ResultSet rs=stm.executeQuery("SELECT * FROM admin_info");if(rootPaneCheckingEnabled){while(rs.next()){String us=input1.getText();String ps=input2.getText();if(us.equals(rs.getString("admtor"))&&ps.equals(rs.getString("admpsw" ))){new Manager();this.dispose();b=false;}InetAddress address =InetAddress.getLocalHost();String IP_name = address.getHostAddress();Calendar E=Calendar.getInstance();int year = E.get(Calendar.YEAR);int month =E.get(Calendar.MONTH)+1;int day = E.get(Calendar.DAY_OF_MONTH);int hour = E.get(Calendar.HOUR_OF_DAY);FileWriter out;out = new FileWriter("D:\\Adminfile.txt");out = new FileWriter("D:\\Adminfile.txt");out.write("登陆用户:"+input1.getText()+" 密码:"+ps+" 登陆时间"+year+"-"+month+"-"+day+" "+hour+" IP:"+IP_name);out.close();}if(b){JOptionPane.showMessageDialog(this,"请输入正确的用户名或密码!","提示错误",JOptionPane.ERROR_MESSAGE);}//con.close();}}catch (IOException ex) {Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex); } catch (SQLException ex) {Logger.getLogger(AdminLogin.class.getName()).log(Level.SEVERE, null, ex);}}}}public static void main(String[] args) {new AdminLogin();}}图12 按班次查询航班图13 按终始站查询图12和图13代码如下:public class FTable extends AbstractTableModel{private Object[][] data;private String[] head = { "航班号","航班公司", "始发站", "终点站" ,"最大乘客数","现有乘客数","起飞时间","普通舱","商务舱"};public FTable(List<ticktInfo> list){data = new Object[list.size()][];for(int i = 0;i < list.size();i++){ticktInfo f = list.get(i);data[i]=newObject[]{f.getFlightID(),f.getCompany(),f.getSstation(),f.getEstation (),getStartTime(),f.getMax(),f.getCurrent(),f.getPutongcang(),f.getShang wucang()};}}public int getColumnCount(){return head.length;}public int getRowCount(){return data.length;}public String getColumnName(int col){return head[col];}public Object getValueAt(int row,int col){return data[row][col];}public Class getColumnClass(int c){return getValueAt(0,c).getClass();}}图14 添加航班代码如下:public class AddF extends JFrame implements ActionListener{String[] title = {"航班号","航班公司","起飞地点","到达地点","起飞时间","最大乘客数","现有乘客数","普通舱 ","商务舱"};JTextField txt1 = new JTextField(20);JTextField txt2 = new JTextField(20);JTextField txt3 = new JTextField(20);JTextField txt4 = new JTextField(20);JTextField txt5 = new JTextField(20);JTextField txt6 = new JTextField(10);JTextField txt7 = new JTextField(10);JTextField txt8 = new JTextField(10);JTextField txt9 = new JTextField(10);JButton OK = new JButton("保存");JButton Cancel = new JButton("取消");ticktInfo flight;ArrayList plst=null;boolean success;public AddF(){Dimension size = Toolkit.getDefaultToolkit().getScreenSize(); setLocation((size.width - getWidth()) / 3,(size.height - getHeight()) / 3);Container con = getContentPane();con.setLayout(new GridLayout(9,1));JPanel p[] = new JPanel[9];for (int i=0;i<9;i++){p[i] = new JPanel(new FlowLayout(FlowLayout.LEFT));p[i].add(new JLabel(title[i]+":"));}p[0].add(txt1);p[1].add(txt2);p[2].add(txt3);p[3].add(txt4);p[4].add(txt5);p[5].add(txt6);p[6].add(txt7);p[7].add(txt8);p[8].add(txt9);for (int i=0;i<9;i++){con.add(p[i]);}JPanel bottom = new JPanel();bottom.add(OK);bottom.add(Cancel);con.add(bottom);OK.addActionListener(this);Cancel.addActionListener(this);setTitle("航班信息添加窗口");setSize(800,500);setVisible(true);}public void actionPerformed(ActionEvent e) { if(e.getSource()==OK){String a=txt1.getText();String b=txt2.getText();String c=txt3.getText();String d=txt4.getText();String e1=txt5.getText();String f=txt6.getText();String g=txt7.getText();String h=txt8.getText();String j=txt9.getText();Solution.AddFlight(a, b, c, d, e1, f, g, h, j);dispose();}else if(e.getSource()==Cancel){dispose();}}public static void main(String[] args) {new AddF();}}图15 删除航班代码如下:public class DeletF extends JFrame implements ActionListener{String[] title = {"航班号","航班公司","起飞地点","到达地点","起飞时间","最大乘客数","现有乘客数","普通舱 ","商务舱"};JTextField txt1 = new JTextField(20);JTextField txt2 = new JTextField(20);JTextField txt3 = new JTextField(20);JTextField txt4 = new JTextField(20);JTextField txt5 = new JTextField(20);JTextField txt6 = new JTextField(10);JTextField txt7 = new JTextField(10);JTextField txt8 = new JTextField(10);JTextField txt9 = new JTextField(10);JButton OK = new JButton("保存");JButton Cancel = new JButton("取消");ticktInfo flight;ArrayList plst=null;boolean success;public AddF(){Dimension size = Toolkit.getDefaultToolkit().getScreenSize(); setLocation((size.width - getWidth()) ;Container con = getContentPane();con.setLayout(new GridLayout(9,1));JPanel p[] = new JPanel[9];for (int i=0;i<9;i++){p[i] = new JPanel(new FlowLayout(FlowLayout.LEFT));p[i].delete(new JLabel(title[i]+":"));}p[0].delete(txt1);p[1].delete(txt2);p[2].delete(txt3);p[3].delete(txt4);p[4].delelte(txt5);p[5].delete(txt6);for (int i=0;i<6;i++){con.add(p[i]);}JPanel bottom = new JPanel();bottom.delete(OK);bottom.delete(Cancel);con.delete(bottom);OK.deleteActionListener(this);Cancel.deleteActionListener(this);setTitle("航班信息删除窗口:”);setVisible(true);setSize(800,500);}public void actionPerformed(ActionEvent e) {if(e.getSource()==OK){String a=txt1.getText();String b=txt2.getText();String c=txt3.getText();String d=txt4.getText();String e1=txt5.getText();String f=txt6.getText();String g=txt7.getText();String h=txt8.getText();String j=txt9.getText();Solution.AddFlight(a, b, c, d, e1, f, g, h, j); dispose();}else if(e.getSource()==Cancel){dispose();}}public static void main(String[] args) {new deleteF();}}图16 乘客购票信息图17 购票成功代码如下:class ClientInfo extends JFrame implements ActionListener{String title[] = {"航班号","起点","终点","起飞日期","姓名","身份证","联系电话","邮箱","座位号","购买票数"};JTextField txtFid = new JTextField(10);JTextField txtStart = new JTextField(10);JTextField txtEnd = new JTextField(10);JTextField txtTime = new JTextField(10);JTextField txtName = new JTextField(10);JTextField txtID = new JTextField(20);JTextField txtTelNum = new JTextField(20);JTextField txtEmail = new JTextField(20);JTextField txtSeatNum = new JTextField(10);JTextField txtCount = new JTextField(10);JButton btnOK = new JButton("确定");JButton btnCancel = new JButton("取消");public ClientInfo() {Container con = getContentPane();con.setLayout(new GridLayout(11,1));JPanel p[] = new JPanel[10];for (int i=0;i<10;i++){p[i] = new JPanel(new FlowLayout(FlowLayout.LEFT));p[i].add(new JLabel(title[i]+":"));}p[0].add(txtFid);p[1].add(txtStart);p[2].add(txtEnd);p[3].add(txtTime);p[4].add(txtName);p[5].add(txtID);p[6].add(txtTelNum);p[7].add(txtEmail);p[8].add(txtSeatNum);p[9].add(txtCount);for (int i=0;i<10;i++){con.add(p[i]);}JPanel bottom = new JPanel();bottom.add(btnOK);bottom.add(btnCancel);con.add(bottom);btnOK.addActionListener(this);btnCancel.addActionListener(this);Dimension size = Toolkit.getDefaultToolkit().getScreenSize();setLocation((size.width - getWidth()) ;setTitle("乘客订票信息填写窗口");setSize(450,600);setVisible(true);}public void actionPerformed(ActionEvent e) {if(e.getSource()==btnOK){try{String a = txtName.getText();String b = txtID.getText();String c = txtTelNum.getText();String d = txtEmail.getText();String e1 = txtSeatNum.getText();String f = txtFid.getText();String g = txtStart.getText();String h = txtEnd.getText();String i = txtTime.getText();Solution.AddClientInfo(a, b, c, d, e1, f, g, h, i); database link=new database();Connection con=link.getCon();Statement stm=link.getStm();String sql="select max,current from flight_info where flightID="+"'"+txtFid.getText().trim()+"'"+"";try{int max=0,cur=0;int udrem=0;ResultSet rs=stm.executeQuery(sql);String s1=txtFid.getText().trim();int ct=Integer.parseInt(txtCount.getText().trim());while(rs.next()){max=rs.getInt("max");cur=rs.getInt("current");}if(cur>0){if(cur-ct>0){udrem=cur-ct;String str1="update flight_info set max="+"'"+max+"'"+",current="+"'"+udrem+"'"+"whereflightID="+"'"+s1+"'"+"";stm.executeUpdate(str1);JOptionPane.showConfirmDialog(this,"订票成功","购票提示",JOptionPane.YES_NO_OPTION);dispose();}else{udrem=cur-ct;JOptionPane.showConfirmDialog(this,"剩余票数为:"+String.valueOf(udrem)+"张","购票提示",JOptionPane.YES_NO_OPTION);}}else{JOptionPane.showConfirmDialog( this,"票已售完","提示错误",JOptionPane.YES_NO_OPTION);}con.close();dispose();}catch(Exception ex){JOptionPane.showConfirmDialog(this,"订票失败","购票提示",JOptionPane.YES_NO_OPTION);}}catch(Exception ex){}}else if(e.getSource()==btnCancel){dispose();}}public static void main(String[] args) {new ClientInfo();}}图18 退出系统代码如下:public class Login extends JFrame implements ActionListener{JTextField user;JPasswordField psw;JLabel a,b;public Login(String s) {super(s);cno.addActionListener(this);cno.setBounds(230,180,60,30);add(a);add(user);add(b);add(psw);add(cfg);add(cno);setLayout(null);setBounds(200,200,430,280);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setResizable(false);setVisible(true);}public void actionPerformed(ActionEvent e){if(e.getSource()==cno){new Register();this.dispose();}}public static void main(String args[]){new Login("用户退出");}参考文献:[1]《信息系统分析与设计》,陈禹主编,杨善林梁昌勇左美云副主编高等教育出版社,2005.[2]《信息系统开发方法教程》,陈佳主编,清华大学出版社,1999 .[3]《信息系统设计原理与应用》,刘鲁,北京航空航天大学出版社,1995.[4]《企业管理信息系统开发的理论和方法》,葛世伦,代逸生,清华出版社,1996年(中文著作).[5]《java案例开发集锦(第二版)》,袁然,郑自国,来为国,电子工业出版社,2008年[6] 闫建红. 基于UML的机票预定系统的开发研究[J]. 太原师范学院学报(自然科学版), 2005,(03).。

相关文档
最新文档