航空订票系统详细设计
五福航空订票系统详细设计文档

北京工业大学耿丹学院"五福航空"订票系统的设计与实现班级:计算机科学与技术09级2班学号:090201203姓名:牟森软件设计说明Version 1.0Revision目录1.引言 (3)1.1目的 (3)1.2范围 (3)1.3 定义、缩写词以及简写 (3)2.参考文献 (3)3. 分解说明 (3)3.1 模块分解 (3)4. 依赖关系说明 (4)4.1 模块间的依赖关系 (4)4.2数据依赖关系 (4)5. 接口说明 (4)5.1 模块接口 (4)6. 详细设计 (5)6.1 模块详细设计 (5)6.2 数据详细设计 (7)1.引言1.1目的本文档描述了五福航空公司订票系统的功能要求和非功能要求,文档阅读对象为本软件项目的订票客户和软件开发人员以及软件测试人员。
1.2范围本软件是五福航空公司定制航空订票系统。
本软件可以实现网络订票、柜台订票预约排号及安全保护几个总体功能。
在1.0版本中只实现网络订票,在后续版本中将继续完善软件功能并升级软件总体功能。
网络订票功能属于实时功能,订票成功后数据保存到数据库,再由数据库返回至在线客服平台,以供用户进行实时查阅、退订功能。
1.3定义、缩写词以及简写2.参考文献无3.分解说明3.1模块分解3.1.1 服务器管理员模块服务器管理员模块:售票信息的数据导入、售票报表统计、MAC地址验证、硬件信息验证、用户管理、下载、售后服务、订单提交。
3.1.2 注册用户模块注册用户模块:系统登陆、用户识别、管理、预定、查询、订票信息数据导出。
3.1.3 普通用户模块普通用户模块:软件安装、注册。
3.1.4 短信模块短信模块:把已订票信息发送给用户。
各模块的详细功能如图一所示:图一4.依赖关系说明4.1模块间的依赖关系本软件的服务器管理模块是作为基础模块存在的,服务器管理员模块、注册用户模块和短信模块都基于此模块,服务器管理模块是独立存在模块,注册用户模块依赖于服务器管理模块,短信模块依赖于注册用户模块和服务器模块,且短信模块只有在订票成功后才由服务器发送给指定手机。
飞机订票系统策划书3篇

飞机订票系统策划书3篇篇一飞机订票系统策划书一、引言二、系统目标1. 提供在线机票预订功能,方便用户随时随地预订机票。
2. 整合机票信息,提供实时的航班查询、预订和票价比较功能。
3. 支持多种支付方式,确保安全、便捷的支付流程。
4. 提供用户管理功能,方便用户查询订单、修改个人信息等。
5. 具备数据分析和报表功能,帮助航空公司进行市场分析和决策。
三、系统功能模块1. 用户界面模块机票搜索和预订:用户可以通过输入出发地、目的地、出发日期等信息搜索机票,并进行预订。
个人中心:用户可以查询订单、修改个人信息、管理常用联系人等。
客服中心:提供在线客服和常见问题解答,方便用户咨询。
2. 后台管理模块航班管理:航空公司可以管理航班信息、舱位设置、票价调整等。
订单管理:管理员可以查询、处理订单,报表。
用户管理:管理员可以管理用户信息,设置用户权限。
数据分析:系统可以分析用户行为、预订趋势等数据,为航空公司提供决策支持。
3. 支付模块支持多种支付方式,如在线支付、银行转账、信用卡支付等。
与第三方支付平台集成,确保支付安全可靠。
提供支付记录查询功能,方便用户查询支付状态。
4. 数据整合模块与航空公司的票务系统进行数据对接,实时获取航班信息和票价。
整合其他数据源,提供更多的机票信息和推荐。
四、技术选型1. 前端技术:采用 HTML、CSS、JavaScript 等技术,构建用户界面。
2. 后端技术:选择适合的编程语言和框架,如 Python、Django 等。
3. 数据库:使用关系型数据库如 MySQL 或 NoSQL 数据库如 MongoDB 存储数据。
4. 支付接口:与第三方支付平台进行集成。
五、项目时间表1. 需求分析与设计:[时间区间 1]2. 系统开发:[时间区间 2]3. 测试与修复:[时间区间 3]4. 上线与维护:[时间区间 4]六、预算1. 人力成本:[具体金额]2. 技术设备采购:[具体金额]3. 软件开发费用:[具体金额]4. 测试与维护费用:[具体金额]5. 其他费用:[具体金额]总预算:[具体金额]七、风险评估与应对措施1. 技术风险:关注技术发展趋势,及时解决技术难题。
航空软件之订票系统详细设计说明书

航空软件之订票系统详细设计说明书航空订票系统详细设计说明书1 .引⾔详细设计阶段的任务是要设计出程序的“蓝图”,以后程序员讲根据这个蓝图写出实际的程序代码。
因此,详细设计的⽬标是在逻辑上正确的实现每个模块的功能。
1.1 编写⽬的详细设计说明书编制的⽬的是:说明⼀个软件系统各个层次中的每⼀个程序(每个模块或⼦程序)的设计考虑。
1.2 背景(1)系统的名称:航空订票系统(2)系统提出者:XX航空公司开发者: XX计算机科学与信息学院⽤户:旅客,航空公司本系统是⼀个独⽴的订票系统1.3 定义:数据字典:关于数据的信息的集合,也即是对数据流图中包含的元素的定义觉的集合。
1.4 参考资料《软件⼯程》王忠群,中国科学技术出版社。
《软件⼯程课程实验指导书》,安徽⼯程⼤学计算机与信息学院。
《软件⼯程—实践者的研究⽅法》(美)Roger s.Pressman 著郑⼈杰马素霞等译机械⼯业出版社2 程序系统的结构航空订票系统预订票系统取票系统退票系统航空公司调整系统旅客⾝份信息验证航班信息查询缴预订通知单验证缴余数取票退票资格验证订票客户管理航班机票管理报表打印管理航班信息管理⼈员⽤户管理票价管理订票审核管理退票管理增加航班信息删除航班信信息修改航班信息机票销2图标售额分⽣成机票⾼级管理⼈员管理⼈票价类型增加客户信息删除客户信息查询客户信息修改客户信息查航班询3 程序1设计说明3.1 程序描述程序设计主要是为了明了概括订票系统的设计思路理念,给⼈以清晰的结构。
通过分部罗列和说明其作⽤与其重要性,也有部分补充其其他⽅⾯。
程序包括:预订票系统,其功能含有:旅客⾝份信息验证,航班信息查询,缴预款取票系统,其功能含有:通知单验证,缴余数取票退票系统,其功能含有:退票资格验证,退票航空公司调整系统,其功能含有:航班机票管理,航班信息管理,票价管理。
3.2 功能3.3 性能(1)系统处理的准确性和及时性系统处理的准确性和及时性是系统的必要性能。
机票预订系统《详细设计》.

《机票预订系统详细设计说明书》1、编写目的在前一阶段(总体设计说明书)中,已解决了实现该系统需求的程序模块设计问题。
包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。
在以下的详细设计报告中将对在本阶段对系统所做的所有详细设计进行说明。
在本阶段中,确定应该如何具体地实现所要求的系统,从而在编码阶段可以把这个描述直接翻译成用具体的程序语言书写的程序。
主要的工作有:根据在《需求分析说明书》中所描述的数据、功能、运行、性能需求,并依照《总体设计说明书》所确定的处理流程、总体结构和模块外部设计,设计软件系统的结构设计、逐个模块的程序描述(包括各模块的功能、性能、输入、输出、算法、程序逻辑、接口等等)。
1.接受:旅客信息及取票通知和账单;2.输出:取票通知和账单和机票;3.网络输出和加密,输入和解密;4.分辨信息的种类并采取相应的处理步骤;5.判断信息的正误并采取相应的处理步骤;6.进行数据库的查询、修改工作;7.接受并判断错误,输出相应的出错信息。
我们将机票预订系统分为五个主要模块,分别为:订票模块,用户注册登录管理模块,航空管理系统,数据库模块,取票模块。
以下我为大家介绍以下数据库模块的详细设计。
2、数据库模块详细设计2.1数据库设计(1)概述数据库设计就是要根据数据的不同用途、使用要求、统计渠道、安全保密性等,来决定数据的整体存储形式,即决定数据的结构、类别、载体、组织方式、保密等级等一系列的问题。
本系统的数据库表设计如表2-7和表a、表b、表c、表d所示。
(2)功能本系统的数据库表设计如表2-1和表a、表b、表c、表d所示。
表2-1 数据库概况表a 航班班次表表b 定位信息表表c 帐单信息/旅客资料表号号 工作单位String20可工作单位表d 机位信息表字段名 数据类型 长度 可否空 注含意 班机号 String 6 不可 外部主键为班机号 班机号 机位信息String20不可机位信息2.2编码设计编码就是以数后字符来代表各种客观实体。
飞机订票系统 课程设计 doc

飞机订票系统课程设计1. 引言飞机订票系统是一种为用户提供在线预订航班、选择座位以及支付机票的系统。
该系统可以方便用户进行航班查询、订票和退票等操作,提供了更便捷的服务,节省了用户的时间和精力。
本文档将详细介绍飞机订票系统的功能需求、系统设计以及实现细节,旨在为系统的开发提供一份可行的设计方案。
2. 需求分析2.1 功能需求系统需要提供以下功能: 1. 用户注册和登录:用户可以通过注册和登录功能完成对个人信息的维护。
2. 航班查询:用户可以根据出发日期、出发地、目的地等条件查询航班信息。
3. 机票预订:用户可以选择心仪的航班并进行预订,选择座位和支付机票费用等操作。
4. 机票退订:用户可以在一定时间范围内申请退票,并按照规定的退票政策进行退款。
5. 个人中心:用户可以在个人中心查看已购买的机票信息、修改个人信息和密码等个人操作。
6. 管理员功能:管理员可以对航班信息进行维护,包括添加、修改和删除航班信息。
2.2 性能需求系统需要满足以下性能需求: 1. 快速响应:系统需要能够在用户请求时迅速响应并返回结果,以提供良好的用户体验。
2. 高并发处理:系统需要能够同时处理多个用户的请求,以应对高并发访问的需求。
3. 数据安全性:系统需要采取有效措施确保用户个人信息的安全性,防止数据泄露和篡改。
3. 系统设计3.1 系统架构该系统采用客户端-服务器架构,客户端负责与用户进行交互,服务器负责处理用户请求并返回相应的结果。
客户端和服务器之间通过网络进行通信。
3.2 数据库设计系统的主要数据存储在数据库中,包括用户信息、航班信息和订单信息等。
数据库设计需满足以下几个方面的需求: 1. 用户信息表:包括用户ID、用户名、密码、邮箱等字段。
2. 航班信息表:包括航班ID、出发日期、起飞时间、出发地、目的地、航班号等字段。
3. 订单信息表:包括订单ID、用户ID、航班ID、座位号、订票时间、支付状态等字段。
3.3 界面设计系统需要提供一系列界面供用户进行操作。
航空订票系统(详细设计说明书)1

《信息系统分析与设计》课程报告题目航空订票系统(详细设计说明书)院系电子工程专业信息工程(系统方向)学生姓名学号指导教师目录一、引言1. 编写目的2.项目背景3.定义4. 参考资料二、任务概述1.目标:完成一个航空订票信息系统的需求分析2.运行环境3.条件与限制三、总体设计1.处理流程2.总体结构与外部模块设计3. 功能分配四、接口设计1.外部接口,硬件接口、软件接口、用户界面2.内部接口五、数据结构设计1.逻辑结构设计2.物理结构设计六.运行设计1.运行模块组合2.运行控制3.运行时间七.出错处理设计1.出错输出信息2.出错处理对策八.安全保密设计九.维护设计摘要:航空订票信息系统开发的目的在于方便客户,其中包括系统总体设计、输入输出设计、代码设计、数据库设计等。
关键字:系统开发项目简介、数据流程图、数据结构图、ER图。
一:引言1.编写目的:航空公司开发航空订票信息系统以为了旅客旅行方便,提高工作效率,提高服务质量,增加经济效益,加快公司发展步伐。
2.项目背景:名称:航空订票信息系统本项目的提出者:开发者:用户:所有有需要的航空旅客实现软件的单位:本项目与其他软件或其他系统的关系:WINDOWS所有的系统3. 定义在我们进行正式软件设计之前,要先了解一些概念:(1)模块化:模块是数据说明、可执行语句等程序对象的集合,模块可以单独被命名而且可通过名字来访问,例如,过程、函数、子程序、宏等都可以作为模块;(2)抽象与逐步求精:软件工程过程的每一步都是对软件解法的的抽象层次的一次精化。
逐步求精与抽象是紧密相关的。
(3)模块独立性:模块独立性是指系统软件中每个模块只涉及软件的具体自功能,而和软件系统的其他的模块接口是简单的。
(4)耦合:是对一个软件结构内各个模块之间互连程度的度量。
耦合强弱取决与模块间接口的复杂程度,调用模块的方式,以及通过接口的信息。
4.参考资料:管理信息系统(美) G.B戴维斯哈尔滨工业大学出版社 1985/1物流信息系统赵刚四川大学人民出版社 2002/9物流信息管理尹涛东北财经大学出版社2005/1编程逻辑与结构化程序设计(美)Harold J.Rood 中国水利水电出版社 2004/3信息处理与数据库刘玉梅邱基文人民教育出版社 1988/3数据库技术与应用-Access2000篇郭力平人民邮电出版社2002/8文档对象模型-处理结构化文档(美)马里尼清华大学出版社 2003二、任务概述1.目标:完成一个航空订票信息系统的需求分析2.运行环境:Windowsxp+Access3.条件与限制:查找相关资料、有一定的数据库知识、会画数据流程图、掌握数据字典的相关知识并会灵活运用。
航空订票系统课程设计

数据字典
❖ 数据项条目
❖
❖ (1)数据项名称:身份证号 ❖ 简 述:表明每个人身份的证件号 ❖ 组 成:籍贯代码+出生年月日+其他代码码 ❖ 类 型:字符 ❖ 长 度:20位 ❖ 取值范围:数字0-9,字母a-x
排用于系统的检查与维护的检测点和专用模块。 ❖ 1.每个用户需要注册才能进入航空订票信息系统,并进行网上订票的。用户必须 ❖ 用自己真实的身份进行注册。 ❖ 2.系统要另外在备一份数据库,防止系统出现错误而使数据信息丢失的可能性。 ❖ 3.系统要安装防火墙,防止黑客入侵破坏系统。还有就是安装杀毒软件,防止 ❖ 病毒入侵而导致系统瘫痪。 ❖ 4.固定时间对系统进行维护和检测. ❖ 5.若系统出现瘫痪时,可出动备用系统维持运转. ❖ 6.定期对系统进行更新整顿清空.
订票系统用例图
航班信息管理子用例图
查询功能子用例图
开发环境
❖ 硬件设备: ❖ PC机一台:CPU:i5内核 内存:2GB DDR3内存 ❖ 硬盘:500G ❖ 系统的主要输入设备是键盘,输出主要是显示器输出。 ❖ 软件: ❖ Windows7操作系统 ❖ Rational Rose2003 ❖ Microsoft Office 2007 ❖ MySQL5.0
数据库概念设计
❖ 根据数据库概念设计,可以创建与实体对应的数据表
数据库是应用系统的核心,应当精心设计,以保证系统的正确、可靠、高效运行。数据库设计包括数据库需 求分析、数据库概念设计、数据库逻辑结构设计和数据库物理设计。数据库设计的目的,是为信息系统 在数据库服务器上建立一个理想的数据模型
航空订票系统课程设计

航空订票系统课程设计一、课程目标知识目标: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课时:实践项目指导与展示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
详细设计报告一、引言1.1 编写目的:本阶段在系统的需求分析的基础上,对航空订票系统做详细设计。
主要解决了实现该系统程序模块具体设计问题。
包括确定算法,数据结构,模块接口的使用,数据库的动态操作以及界面设计等。
在以下的概要设计报告中将对在本阶段中对系统所做的所有详细设计进行详细的说明。
在下一阶段的编码过程中,程序设计员可参考此详细设计报告,在详细设计对机票预定系统所做的算法设计,数据结构以及数据库动态操作的基础上,对系统进行编码。
1.2 项目背景:开发软件名称:航空订票系统。
用户:航空公司运行环境:宿舍电脑。
开发平台:MyEclipse 7.0 PostgreSql数据库。
系统架构:该系统采用java+jsp框架1.3 定义:查询:对数据库的操作的一种,用于搜索数据信息。
插入:对数据库的操作的一种,用于将数据存入数据库中。
更新:对数据库的操作的一种,用于更改数据库中的数据信息。
PostgreSql: 系统服务器所使用的数据库管理系统(DBMS)。
SQL: 一种用于访问查询数据库的语言事务流:数据进入模块后可能有多种路径进行处理。
主键:数据库表中的关键域。
值互不相同。
外部主键:数据库表中与其他表主键关联的域。
1.4 参考资料:需求分析说明书软件开发小组软件工程齐治昌谭庆平宁洪等高等教育出版社实用软件工程郑人杰等,清华大学出版社。
二、总体设计2.1 需求概述航空订票系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。
具体功能为用户把预定机票的旅客信息(姓名、性别、身份证号码(护照号码)、乘坐时间、出行始发地和目的地等)输入到系统中,系统为旅客安排航班。
当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。
此外航空公司为随时掌握各个航班飞机的乘载情况,需要定期进行查询统计,以便适当调整。
同时还需完成旅客延误了取票时间的处理,航班取消后的处理,旅客临时更改航班的处理等。
根据可行性研究的结果和客户的要求,分析现有情况及问题,采用B/S结构,将机票预定系统划主要就是服务器端子系统。
2.2 软件结构:图1软件结构图三、程序描述3.1 各功能详细描述:本系统主要用于机票预订,所以提供了以下几个子功能:机票预订,取票通知,查询航班,查询机票,退票,打印机票,各航班的营运统计,以及后台方面的航班的添加,取消航班,机票的生成,以及航班的查询等后台功能。
1、机票预订功能:用户和机场管理员有权力进行该项功能。
首先通过查询得到旅客所需的航班,确定该航班还有没有被预订的座位,然后选择座位的等级,填写旅客的详细信息之后就可进行网上预订机票。
2、取票通知:该项功能只有用户和机场管理员有权力进行操作,在机票预订功能成功完成之后,系统会自动给浏览器端发送一条取票信息以及所需缴纳的费用。
旅行社可以利用特定设备将该取票信息打印出来,这就是取票通知。
3、查询航班:可以通过输入出发地,目的地,日期和时间选定自己航班。
4、查询机票:该项功能用户、游客、管理员都可以操作,可以通过自己的身份证号以及取票通知上的机票号查询自己的机票信息。
5、退订机票:该功能只有用户和机场管理员有权力操作,利用身份证号和对应的机票号就可以查询到机票信息,然后就可以退订机票。
6、打印机票:该功能只有机场管理员有权力操作,只有当管理员确认旅客已经付款后才予以打印机票,可以通过身份证号和对应的取票信息上的机票号查询机票信息,然后服务器返回机票信息,管理员就可以打印该机票信息,交给旅客。
7、各航班的营运统计:该项功能只有机场管理员才能操作,他可以通过输入年份和月份查询当月个航班的营运情况,以便机场能够及时掌握航班动态。
8、后台的航班添加:该项功能只有机场管理员才能操作,他通过提供航班的具体信息添加航班信息。
9、后台的取消航班:该项功能只有机场管理员才能操作,先通过航班号和航班日期查询到航班信息后,取消航班就可以将该航班从数据库中删除。
10、后台的航班查询:该项功能只有机场管理员才能操作,通过航班号和航班日期查询到航班信息。
11、后台的机票生成:该项功能只有机场管理员才能操作,可以通过该项功能给刚添加的航班生成对应的飞机票号纪录。
3.2 主要的系统功能模块如下:1、用户模块:用户用例图如图2所示(1)用户登陆模块ConsumerDAO.getConsumer() (2)用户注册模块ConsumerDAO.register()(3)查询航班模块ConsumerDAO.getFlightByInformation() (4)订票模块ConsumerDAO.orderTicket() (5)修改密码模块ConsumerDAO.modifyPassword() (6)付款模块ConsumerDAO.paying() (7)退票模块ConsumerDAO.returnTicket()图22、管理员模块:管理员用例图如图3所示 (1)管理员登陆模块ManagerDAO.getManager() (2)管理员修改密码模块ManagerDAO.modifyPassword() (3)删除用户ManagerDAO.deleteConsumer() (4)添加新管理员ManagerDAO.addManager() (5)删除管理员模块ManagerDAO.deleteManager() (6)发布新航班模块ManagerDAO.addNewFlight() (7)删除航班模块ManagerDAO.deleteFlight()(8)根据信息查看航班信息模块ConsumerDAO.getFlightByInformation()用户注册或登录 搜索飞机票预订飞机票删除已定机票付款普通用户生成交易信息并请用户确认图33、创新点——通过关键字从其他网站找到一些信息推荐给用户模块:用例如图4所示。
推荐信息模块InformationDAO.getInformationByKeyWord()3.3数据库设计:普通用户(Consumer) 字段名 字段类型 是否为空 默认值 字段含义注释consumerId VARCHAR2(10) N 用户编号 用以标示不同用户。
consumerName VARCHAR2(20) N 用户名称 用户自己取的名字有利于用户记忆,可以用来登录等。
consumerPasswor dVARCHAR2(20) N 用户密码 用于确定用户身份。
consumerGender VARCHAR2(1) N 用户性别consumerBooking FligtVARCHAR2(20) Y 用户已订票航班用于储存用户已订票的航班。
consumerBooking SeatVARCHAR2(20) Y 用户已定机票的座位号 用于储存用户已订票航班的座位号。
consumerIDCardO rPassportNoVARCHAR2(20)N用户的身份证号或护照号用户取票的凭证(身份证号或护照号)信息采集器 附近旅馆信息附近餐馆信息交通状况管理员登录 发布新航班 删除用户 管理员修改密码删除航班查看航班信息管理员 增加新管理员 删除管理员管理员(Manager)航班表(FLIGHT)3.4、流程图:图5流程图3.5 DAO 接口设计设计了通用的DAO接口,而不是直接写访问数据库的实现类,这样可以创建不同的实现类来实现接口,使标准制定和标准实现分离。
当换了数据库,或者换了数据库访问技术,就可以写新的实现类,不用改变原来的代码。
如定义FlightDAO接口,若从文件中读取数据可以定义FlightDaoFromFile实现类,若利用JDBC访问数据可以定义FlightDaoFromJDBC实现类,若利用hibernate访问数据可以定义FlightDaoFromHibernate实现类等。
3.5.1 FlightDAOflightDAO用来航班计划,航班的数据访问。
package com.tarena.abs.dao;import com.tarena.abs.model.*;import java.util.*;//对航班和航班计划数据访问的接口。
public interface FlightDAO{// 根据指定出发地,目的地和出发日期在底层数据源中查找//得到所有的航班对象的集合。
public Set getAllFlights(String fromAddr,String toAddr,Calendar date);//执行出票的操作。
public boolean order(Order ord);//添加指定的航班计划对象。
public boolean addFlightSchedular(FlightSchedular fs);//根据给定的航班编号在底层数据源中删除该航班计划,//以及该计划下的所有航班。
public boolean removeFlightSchedular(String flightNumber);// 得到所有航班计划对象public Set getAllFlightSchedulars();//添加航班public boolean addFlight(Flight fl);}3.5.2 TicketOrderDAOTicketOrderDAO用来访问票单数据。
package com.tarena.abs.dao;import java.util.Set;import java.util.Calendar;import com.tarena.abs.model.*;// 机票出票记录访问接口public interface TicketOrderDAO {// 执行出票的操作。
public boolean order(Order ord);// 执行退票操作。
public boolean cancelOrder(int TicketNumber);// 查询指定营业网点在指定时间段内的出票记录public Set<TicketOrder> getAllTicketOrder(Branch branch,Calendar startDate,Calendar endDate);// 得到指定营业网点指定日期内的营业额。
public double getAllTicketMoney(Branch branch,Calendar startDate,Calendar endDate);//得到所有营业网点指定日期内的营业额public double getAllTicketMoney(Calendar startDate,Calendar endDate);//查询所有出票信息public Set<TicketOrder> getAllTicketOrder();}4 关健代码分析4.1流程代码分析服务器启动时读取配置文件,读取数据,并且服务器端ServerSocket 等待客户端线程访问,当收到客户端相应后,则创建一个新的服务线程执行服务。