JavaSwing+MySQL的飞机订票系统(内含oracle版本)

news2025/6/20 12:57:17

点击以下链接获取源码:
https://download.csdn.net/download/qq_64505944/88055544
在这里插入图片描述

JDK1.8
MySQL5.7
功能:接收客户端发来的数据、处理客户端发来的数据、发送数据包到客户端;客户端:查询所有航班的信息、查看自己所定的票、订票、退票、改票、取票
(ppt+ER图+流程图+需求背景数据库+架构说明有lun文视频源码齐全)

机票预订系统需求分析

单 位: 卓京科技有限公司
项目名称: 机票预定系统
团 队: 蜗 牛 组
报告日期: 2012年1月26日
指导老师: 陈 凤

摘 要
为了更好的巩固和加强书本所学的知识,把所学的东西转化为实际应用。我们学习了ORACLE应用程序的使用。并应用了SQL语言。对数据库的创建、修改、删除方法有了一定的了解。通过导入表和删除表、更改表学会了对于表的一些操作。为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。
当我们收集了大量的数据后,应该把它们保存起来进入近一步的处理,进一步的抽取有用的信息。当年人们把数据存放在文件柜中,可现在随着社会的发展,数据量急剧增长,现在人们就借助计算机和数据库技术科学的保存大量的数据,以便能更好的利用这些数据资源。
通过机票预定系统的构造以及购票人的信息还有机票的相关信息制成表格,输入到数据库中,使之能够进行查询、修改、删除并且与机票预定系统执行相同的操作。需求分析阶段就是要研究我所作的机票预定系统的具体分类和实施过程流图。概念设计阶段要完成数据抽象与局部视图设计还有视图的集成。逻辑结构设计阶段要把E-R图转化为关系模式并且把我输入的七张表结合在一起完成一个总关系表。最后就是要运行和实施数据库。

第一章 引言
1.1、 编写的目的
为了巩固java第一阶段的学习,模拟一个飞机订票系统来实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。
1.2 、背景
开发软件名称:机票预订系统。
项目任务提出者:马利娜
项 目 组 长:欧阳健
项目开发者: 欧阳健 马利娜 秦国文 薛勇军。
用 户:所有客户
运行环境:win8/win7/xp/vista
开发平台:MyEclipse 7.0 Mysql数据库。
系统架构:该系统采用java完成,用AWT开发系统界面设计。
1.3、定义
ORACLE: 系统服务器所使用的数据库管理系统(DBMS)
SQL: 一种用于访问查询数据库的语言
事务流:数据进入模块后可能有多种路径进行处理

第二章 任务概述
2.1 目标
《网上机票预订系统》本是在Internet环境下运行的,但根据课程需求在此我们先将它做为一个c/s程序。该项软件开发的意图是为了方便航空公司进行乘客预定票的管理,减少管理中出现的麻烦,它主要在某一航空公司内部进行使用,再加之这是一项独立的软件,全部内容自含,所以不会涉及到与其它系统、产品的联系和接口问题。
 2.2 用户特点
管理员(维护人员):熟练掌握Java语言。熟悉掌握 sql语句的使用。
普通用户:能够熟练地使用桌面程序,有一定的电脑基础。
2.3 假定和约束
普通管理员,只能对库(航班库和客户库)中的信息进行查询操作;超级管理员,可以根据具体需要进行适当的数据管理(增、删、改、更)。
客户只能对航班信息库中的内容进行查询操作,客户进入到页面之后在不进行登录的情况下只能进行航班信息查询操作,要预订机票就必须要先注册登录提交自己的基本信息;系统会根据管理员和客户的各种操作做出相应的返回信息进行提示。

第三章 需求规定
3.1系统功能需求
本系统用于远程机票预订,包括远程航班信息查询、机票预订与确认等;主要分为四大功能:查询、订票、退票和管理。
管理员登录、注销 到系统并进行插入、删除、更新以及查看机票后台数据库操作
插入:机票的插入可以按照航班号、班期、公司、座位号、起飞地以及抵达地等等插入数据库。
删除:机票可以按照航班号、起止城市、星期进行删除

3.1.1客户端系统功能
1.普通用户:
查询:根据航班号、航空公司以及目的地查询出票类信息
订票: 根据出发日期和第一航班号预订机票,机票类型分为单程和往返,一份订单可订多张机票 。
退票:要填写订单号、身份证、客户姓名以及航班信息等等。
后台管理系统:
航班动态:可以根据出发城市、到达城市(或者是航班号)查看这个航班的最新动态
2.机场人员:
查询:根据航班号、航空公司以及目的地查询出票类信息
订票: 根据出发日期和第一航班号预订机票,机票类型分为单程和往返,一份订单可订多张机票 。
退票:要填写订单号、身份证、客户姓名以及航班信息等等。
后台管理系统:
销售统计:根据年份、月份统计总共买出的票数
后台管理:管理员可以根据总部要求去创建航班、取消航班、航班查询
下面以结构图来描述机票预定系统的软件总体结构

3.1.2 服务器端系统功能
查询:当有旅客查询机票时,接收其数据信息,并能返回查询结果
统计:对售出的机票作出统计
更新航班信息:当客户端发来请求信息,服务器进行接收,
流程图:

航班信息更新:系统的管理员通过对航班信息的修改,使数据库中的信息发生变化。
航班取消:当由于某种原因某航班被取消了,系统的管理人员要第一时间的更改数据库中的航班信息,使旅客能及时了解最新信息。
3.2 数据字典
系统中的数据元素:
名字:旅客信息
别名:
描述:旅客的个人信息,用于对旅客的确认
定义:旅客信息=姓名+性别+工作单位+身份证号码+旅行时间
+旅行目的地等等

名字:航班信息
别名:
描述:航班的起飞时间及上机时间等,让旅客能够查看和确认
定义:航班信息=编号+终点+起飞始点等等

名字:机票信息
别名:
描述:旅客的旅行时间和目的地等等,用于确定旅客的航班
定义:订票信息=旅客旅行时间+旅客旅行目的地等等

名字:机票订单
别名:
描述:旅客交付费用的凭证
定义:机票账单=旅客姓名+交付费+时间

名字:取票通知
别名:
描述:旅客领取机票的凭证
定义:取票通知=旅客姓名+领票时间

名字:打印机票信息
别名:
描述:旅客的航班机票的信息
定义:打印机票信息=旅客的航班机票

名字:航空公司数据库信息
别名:
描述:已订票的旅客在航空公司的记录和航班信息等等
定义:航空公司数据库信息=航班机票信息+也订票旅客的信息等等

3.3 项目模块划分

第四章 数据库设计
4.1 E-R图

4.2 数据表的设计
1.用户表(users)
字段名称 类型 记录内容 是否为空 备注
u_id Varchar2(20) 用户名 0 主键
u_password Varchar2(20) 密码 0
u_name Varchar2(20) 用户姓名 1
u_telephone Varchar2(20) 手机号码 1
u_address Varchar2(100) 用户地址 1
u_email Varchar2(20) Email 1
u_idcard Varchar2(20) 身份证 1
u_power number 权限 1 1表示机场人员
0表示旅客

1.登录表(login)(统计记录的人数,供服务器查看 共有多少人访问该网站)
字段名称 类型 记录内容 是否为空 备注
l_uid Varchar2(20) 用户名 0
l_password Varchar2(20) 密码 0

2.订单表(order)
字段名称 类型 记录内容 是否为空 备注
o_id Vachar2(100) 订单编号 0 自增长
o_uid Varchar2(20) 用户名 0
o_tid Varchar2(40) 票编号 0
o_time Varchar2(40) 下单时间 0

3.票务信息(tickets)
字段名称 类型 记录内容 是否为空 备注
t_id Vachar2(100) 机票编号 0 主键
t_f_id number 航班id 号 0
t_uid Varchar2(20) 用户Id 0
t_seatId Number 座位号 0
t_date Varchar2(20) 该票的日期 0 这是一个出发的日期
t_type Varchar2(30) 座位类型 1 这是一个座位的类型
t_price Number 票价 1 这个舱位的价格

4.航班信息表(flight_info)
字段名称 类型 记录内容 是否为空 备注
f_id number 航班id 号 0 航班起飞的ID号(主键)
f_number Vachar2(30) 航班号 0
f_start_time Varchar2(40) 出发时间 0
f_end_time Varchar2(40) 到达时间 0
f_departure Varchar2(40) 始发地 0
f_destination Varchar2(40) 目的地 0
f_company Varchar2(30) 航空公司 0

7.航空仓类型——座位表(seat)-------
字段名称 类型 记录内容 是否为空 备注
s_id Number 座位唯一Id 0 标识 能够以下得到信息
f_id number 航班id 0 航班id(外键)
s_ type Varchar2(30) 舱位类型 0 舱位类型
s_number Number 舱位数量 0 舱位数量
s_price Number 舱位价格 0 舱位价格

8.用户操作记录表(deal_log)
字段名称 类型 记录内容 是否为空 备注
d_number number 用户编号 0 主键,自增长
d_uid Varchar2(30) 用户名 0
d_opertype Varchar2(40) 操作类型 0 订票,退票,改签
d_tid Varchar2(40) 机票编号 0
d_time Varchar2(10) 时间 0 操作的时间

9.航班动态表(state)
字段名称 类型 记录内容 是否为空 备注
fs_number Varchar2(30) 航班号 0 航班号
fs_date Varchar2(10) 航班飞行日期 0 航班
fs_state Varchar2(300) 航班动态 0 航班动态

第五章 运行环境规定
5.1硬件要求:
服务器:CPU133M,64M或以上内存,300M硬盘空间;VGA显示器或更高
客户机:最低CUP133M,16MB内存;最少8MB的RAM存储器;VGA显示器或更高
5.2软件要求
服务器:Windows 2000 Server中文版或更高;oracle 8i或更高
客户机:Windows 95以上或以上;该软件运行于Windows系统,使用java语言开发

第六章 测试
6.1 单元测试/系统测试:
在测试过程中,首先需要对各子单元过程进行测试。在各子单元过程测试完毕后,再对各模块(包括各子单元过程之间的接口)进行测试,处理好各模块之间的接口,最后对系统进行测试和维护。
主要通过测试部分,发现开发人员忽视的部分,通过测试人员和编码人员的沟通和协作,可以不断的改进系统,不断提高系统的性能以及安全性。

第七章 需求小结
在课程设计的过程中,我学到了很多,也找到了自己身上的不足。感受良多,获益匪浅。我们小组分工合作、齐心协力,一起完成了课程设计前的准备工作(阅读课程设计相关文档)、小组讨论分工、完成系统开发的各个文档、课程设计总结报告、,个人小结的任务。在课程设计中我们便对这次任务进行了规划和分工。我们组的成员一起努力,查阅资料、小组讨论、对资料进行分析,并在这段时间里完成了整个设计,并最后撰写课程设计报告及个人总结。
从这次的课程设计中,通过对需求分析说明书的报告很好的学习了软件工程的知识,对以后书写和学习课程设计留下了很好的经验。需求分析的书写要很正式,要根据实验指导书的模式来写,从中要写出对目标概述,对功能的规定,对性能的规定,运行环境的规定等等。
在课程设计的过程中,我们经历了感动,经历了一起奋斗的酸甜苦辣。也一起分享了成功的喜悦。这次的课程设计对我们每个人来说都是一个挑战。这时候小组的力量就体现出来了,各司其职,各尽其能。发挥了集体的效用。在这个过程,我受到了好多帮助,一让人有无比的动力和解决问题的决心。其实这次的课程设计我的最大的感受不是知识的获得,而是人格的磨练和交际的能力。课程设计这样集体的任务光靠团队里的一个人或几个人是不可能完成好的,合作的原则就是要利益均沾,责任公担。如果让任务交给一个人,那样既增加了他的压力,也增大了完成任务的风险,降低了工作的效率。
第八章:参考文献
[1] 张海藩.软件工程导论(第四版)[M].北京:清华大学出版社,2003
[2] 《基于项目的软件工程-面向对象研究方法》Cathie LeBlan&EvelynStiller机械工业出版社 2001.1
[3] 罗运模 等.SQL Server 数据库系统基础.北京:高等教育出版社,2002
[4]Computer Network A.S.Tanenbaun Prentice Hall 1996/01
[5]罗运模 等.SQL Server 数据库系统基础.北京:高等教育出版社,2002

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/762764.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Day 60 小结

1.惰性学习(消极学习):在训练数据集的时候不会创建目标函数,只是简单将训练样本存储。后期需要对新样本进行判断的时候分析新样本和已存储的样本之间的关系,并以此确定新样本的输出值。例如:knn算法。 2.急…

LeetCode:4. 寻找两个正序数组的中位数

🍎道阻且长,行则将至。🍓 🌻算法,不如说它是一种思考方式🍀 算法专栏: 👉🏻123 题解目录 一、🌱[4. 寻找两个正序数组的中位数](https://leetcode.cn/proble…

微信朋友圈同步你知道怎么设置吗?

微信关于朋友圈同步 其实没有什么其他方法 但是不想一直复制粘贴 繁琐又麻烦 对于要发布很多条的情况下 就很不方便 如果是有可以同步朋友圈的功能 我们可以先选择一个好友 然后设置好跟圈任务 好友发啥你就会跟TA发出一模一样的朋友圈

CEASC项目环境搭建(训练VisDrone数据集)

CEASC项目环境搭建(训练VisDrone数据集) 论文地址:https://openaccess.thecvf.com/content/CVPR2023/papers/Du_Adaptive_Sparse_Convolutional_Networks_With_Global_Context_Enhancement_for_Faster_CVPR_2023_paper.pdf Code&#xff1a…

同比环比数据可视化

引言 数据分析和可视化在现代商业环境中变得越来越重要。随着数据的迅速增长,我们需要有效的工具来解释和理解这些数据。 数据可视化提供了一种直观的方式,帮助我们从海量数据中提取有意义的见解,以支持业务决策。 同比环比图作为一种常见的…

AI制图工具丨Midjourney产品功能介绍

了解如何使用Discord上的Midjourney Bot通过简单的文本提示创建自定义图像 Midjourney是一款AI制图工具,只要关键字,就能透过AI算法生成相对应的图片,只需要不到一分钟。 可以选择不同画家的艺术风格,例如安迪华荷、达芬奇、达利…

JavaScript中的JSON

一:分类  简单值:字符串、数值、布尔值和 null 可以在 JSON 中出现,就像在 JavaScript 中一样。特殊 值 undefined 不可以。 对象:第一种复杂数据类型,对象表示有序键/值对。每个值可以是简单值,也可以…

如何通过三级缓存解决 Spring 循环依赖

以下内容基于 Spring6.0.4。 这个其实是一个特别高频的面试题,松哥也一直很想和大家仔细来聊一聊这个话题,网上关于这块的文章很多,但是我一直觉得要把这个问题讲清楚还有点难度,今天我来试一试,看能不能和小伙伴们把…

一张证,三年月薪翻三倍!

18年9月,我获取了PMP(项目管理)认证,19年6月获取了PgMP(项目集群管理)认证。考证过程并不是很难,月薪却从1万突破3万,也找到了自己喜欢和擅长的工作领域,获益无穷。 什么…

Navicat 用户权限功能 | 预防 MySQL 删库风险

近期,我们后台收到一位用户的问询,有关于误删库的解决办法。对于企业来说,这可能是一个大事故!但幸运的是,该用户在不久之前看了我们的 Navicat 自动备份功能文章,并且实施了数据库备份操作,所以…

如何下载SRA存放在AWS的原始数据

通常,我们都是利用prefetch从NCBI上获取数据,然后用fasterp-dump/fastq-dump 转成fastq。但遗憾的SRA的数据是原数据的有损压缩,比如说我19年参与发表的文章里单细胞数据上传的是3个文件,但是当时的faster-dump/fastq-dump只能拆出…

MongoDB源码安装

文章目录 MongoDB源码安装:注:下载:解压:创建数据目录:创建软链接:创建变量脚本:执行脚本:启动mongodb:检查:连接mongodb: MongoDB源码安装: 注&…

Flutter系列文章-Flutter基础

Flutter是Google推出的一种新的移动应用开发框架,允许开发者使用一套代码库同时开发Android和iOS应用。它的设计理念、框架结构、以及对Widget的使用,都让开发者能更有效率地创建高质量的应用。 一、Flutter设计理念 Flutter的设计理念是“一切皆为Wid…

安装hive数据仓库

部署hive数据库 环境准备 需要安装部署完成的Hadoop的环境如果不会搭建的可以参考: 安装mysql 卸载Centos7自带的mariadb rpm -qa|grep mariadbrpm -e mariadb-libs-5.5.64-1.el7.x86_64 --nodepsrpm -qa|grep mariadb mariadb-libs-5.5.64-1.el7.x86_64是使用…

ToT: 利用大语言模型进行有意识的问题解决(上)

ToT 摘要介绍利用大语言模型进行有意识的问题解决1. 思维分解2. 思维产生 G(p,s,k)3. 状态评估V(p,S)4. 搜索算法 实验相关工作讨论 原文: 摘要 语言模型正在迅速成为一般问题解决的部署,但在推理过程中仍然局限于 标记级别(token-level&…

uniapp左右滑动切换月份

左右滑动触发事件 给组件绑定事件,主要利用组件的触摸开始和触摸结束事件来实现: <view @touchstart="touchStart" @touchend="touchEnd"> 2,声明初始化点击位置变量startX data() {return {list:[],pageNum:1,pageSize:10,//初始化点击位置…

手撕Spring06

概述 该章节通过各种Context解决上下文问题&#xff0c;使用模版方法的设计模式&#xff0c;并增加了bean实例化之前、beanc初始化前后的扩展点整体设计 知识点补充 类图 context context包下主要是传递上下文、调用core.io、beans等包下的实际功能完成&#xff0c;配置文件…

12.11 FS4412开发环境搭建

目录 开发边硬件资源介绍 地址映射表 硬件控制原理 load/store 地址映射表4个G包括 开发边硬件资源介绍 地址映射表 硬件控制原理 1.数据运算指令&#xff08;CPU内部&#xff09; 2.跳转指令&#xff08;CPU内部&#xff09; 3.load/store&#xff08;通过读写对硬件…

测试的基本概念(测试系列2)

目录 前言&#xff1a; 1.什么是需求 1.1需求的定义 1.2为什么有软件需求 1.3测试人眼里的需求 2测试用例 2.1什么是测试用例 2.2为什么要有测试用例 3.软件错误&#xff08;BUG&#xff09; 3.1什么是bug 4.软件的生命周期 5.开发模型 5.1瀑布模型 5.2螺旋模型 …

【PHP源码】手术麻醉管理系统介绍

手术麻醉管理系统是什么&#xff1f; 手术麻醉信息管理系统是数字化手段应用于手术过程中的重要组成部分&#xff0c;用数字形式获取并存储手术相关信息&#xff0c;既便捷又高效。既然是管理系统&#xff0c;那就是一整套流程&#xff0c;管理患者手术、麻醉的申请、审批、安…