目 录
1 绪论 1
1.1 项目背景 1
1.2 项目目的 1
1.3 项目可行性分析 2
2 技术介绍 3
2.1 Java技术 3
2.1.1 Java技术简介 3
2.1.2 Java面向对象的特征 3
2.2Javascript和jQuery技术 4
2.1.1 Javascript 简介 4
2.2.2 jQuery-easyui简介 4
2.3Jsp技术 5
2.4 Mysql 5
3 需求分析 6
3.1需求分析 6
3.2 地面指挥端需求分析 8
3.2.1地面指挥端需求描述 8
3.2.2地面指挥端用例表 8
3.3机长端需求分析 11
3.3.1机长端需求描述 11
3.3.2机长端用例表 11
3.4航班起降与协调系统功能模块图 13
3.5航班起降与协调系统E-R图 13
4 系统及功能设计 14
4.1 项目组成 14
4.1.1 数据库端 14
4.1.2 服务器端 14
4.1.3 客户端 14
4.2 数据库的分析与设计 14
4.2.1 数据库逻辑结构设计 14
4.2.2 数据库表的分析 15
4.2.3 数据库表的设计 15
4.2.4 数据库表的关联 17
4.3 项目流程图 18
4.4 服务器端功能设计 20
4.5 客户端功能设计 21
5 项目环境的搭建 22
5.1 JDK的安装 22
5.1.1 JDK-7u15的安装 22
5.1.2 JDK环境变量的配置 22
5.2 数据库的安装 23
5.2.1 Mysql的安装与配置 23
5.2.2 SQLyog10.2的安装与配置 24
5.3 服务器端和客户端的安装 25
5.3.1 eclipse LUNA的安装与配置 25
5.3.2 apache-tomcat-7.0.77的安装与配置 26
6 系统的实现 27
6.1 登录功能的实现 27
6.1.1指挥员登录 27
6.1.2机长登录 28
6.2主界面的实现 29
6.2.1 地面指挥端主界面的实现 29
6.2.2 机长端主界面的实现 31
6.3 地面指挥管理功能的实现 32
6.3.1 地面指挥端航班信息管理功能的实现 32
6.3.2 地面指挥端航班指挥信息管理功能的实现 35
6.4 机长端功能实现 37
6.4.1 机长端信息显示的实现 37
6.4.2地面指挥端航班指挥信息管理功能的实现 39
7 系统的测试与维护 43
7.1 测试描述 43
7.2 测试目的 43
7.3 测试范围 44
7.4 测试用例 44
7.5 测试结果分析 46
8 结束语 47
参考文献 48
致谢 49
外文原文 50
中文翻译 61
4 系统及功能设计
4.1 项目组成
4.1.1 数据库端
数据库端主要把地面指挥员、机长及其相关的各种信息存储在数据库表中,方便服务器对数据的增删改查,从而达到客户端对数据库信息的增删改查。这里用Mysql中的表来记录各种数据。
4.1.2 服务器端
服务器端与客户端交互,把客户端所传来的数据,请求相对应的操作,调用方法,连接数据库对数据库进行相对应地面指挥员及机长想对数据做出的增删改查,从而达到记录数据的效果。
4.1.3 客户端
客户端安装于机场塔台和航班的设备中,与用户直接交互,对于用户的操作向服务器端发出请求,等待服务器响应。服务器成功响应从而达到地面指挥员和机长想得到的信息及做出相应的操作。这里用eclipse中的浏览器代替。
4.2 数据库的分析与设计
数据库是软件进行信息管理的命门,数据库设计是否清晰、简介直接关系到系统开发和维护的成本。数据库分析包括概念结构设计、逻辑结构设计和物理结构设计。在此系统进行需求分析时已经分析并画出了数据库E-R图(概念结构设计),所以这里着重讨论数据库的逻辑结构设计和数据库表的分析和设计(物理结构设计)。
4.2.1 数据库逻辑结构设计
数据库的逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为与选用的 DBMS产品所支持的数据模型相符合的逻辑结构。在进行数据库逻辑的设计时,要确认数据库的逻辑结构,还要保证数据库的完整性和安全性,明确指出数据记录由哪些表项组成,以及数据库数据的类型和取值范围。
在数据库逻辑结构设计中,由我们之前设计的机场航班起降与协调管理系统E-R图可以得出以下关系数据模型(关系中下划实线为主键,下画虚线为外键):
机长(机长编号,姓名,密码);
地面指挥(指挥员编号,姓名,密码);
机长客户端(机长编号);
地面指挥客户端(指挥员编号);
航班信息(航班编号,航班号,飞行区间,起降时间,航班状态,指挥员编号,机长编号);
指挥信息(编号,指令、请求编号,指令、请求名称,发出端,指令、请求内容,
航班编号,发布时间,指挥员编号,机长编号)。
4.2.2 数据库表的分析
根据对地面指挥员端和机长端的需求分析,首先必须登录才可以进行进一步操作,所以首先需要有指挥员表:t_User;机长表:t_Polit;还需要航班信息表t_Grade;在航班进行实时通信时,还需要航班请求和指令表:t_Standard,整理如下:
1.指挥员表:t_User
2.机长表:t_Polit
3.航班信息表:t_Grade
4.航班指挥信息表:t_Standrad
3 需求分析
3.1需求分析
需求分析就是指对要研究的问题进行详细的分析,仔细思考这个的要求,其中主要包括要输入的数据,要得到的结果。在做系统之前,我们必须做的就是需求分析。它主要就是确定开发出来的软件是做什么用的,它可以达到怎样的效果。
在软件的开发过程中,软件需求分析是尤为重要的一个步骤,它的主要工作是描述系统的范围、定义、功能以及性能需求,要用这个软件完成一个什么样的目的,这为了分析软件所有做的工作被成为需求分析。在软件开发的过程中它是至关重要的一个过程,它直接决定着软件设计方案是否会实现他的顾客要求的预期功能,是否会让顾客满意。
在此航班起降与协调管理系统中,参与到的人员有地面指挥人员和机长,地面指挥人员可以进行航班信息浏览、搜索和操作航班信息、发布航班指令、接收航班请求和获取航班动态。
图3-1 地面指挥人员端用例图
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String userName=request.getParameter("userName");
String password=request.getParameter("password");
request.setAttribute("userName", userName);
request.setAttribute("password", password);
}