Java实现航空航班管理系统

网友投稿 384 2022-10-09


Java实现航空航班管理系统

本文实例为大家分享了java实现航空航班管理系统的具体代码,供大家参考,具体内容如下

Plane对象:

在Plane对象里定义了飞机的编号id、航班号、目的地、起飞日期。生成了构造方法和toString()方法;以及getting()和setting()方法,但在程序里没用到。

package com.hangkong;

public class Plane {

private int id;//编号

private String planeNum;//航班号

private String address;//目的地

private String date;//日期

public Plane(int id, String planeNum, String address, String date) {

super();

this.id = id;

this.planeNum = planeNum;

this.address = address;

this.date = date;

}

public Plane(){

super();

}

//Alt+Shift+s

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public String getPlaneNum() {

return planeNum;

}

public void setPlaneNum(String planeNum) {

this.planeNum = planeNum;

}

public String getAddress() {

return address;

}

public void setAddress(String address) {

this.address = address;

}

public String getDate() {

return date;

}

public void setDate(String date) {

this.date = date;

}

@Override

public String toString() {

return "Plane" + id + "\t\t" + planeNum + "\t\t" + address + "\t\t" + date;

//return "Plane ID:" + id + "\t航班编号:" + planeNum + "\t目的地:" + address + "\t起飞时间:" + date;

}

}

mysql数据库:

数据库名字是Fly,数据表是plane;在getcon()函数中注册驱动、获取连接

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------

-- Table structure for `plane`

-- ----------------------------

DROP TABLE IF EXISTS `plane`;

CREATE TABLE `plane` (

`id` int(20) NOT NULL AUTO_INCREMENT,

`planeNum` varchar(20) DEFAULT NULL,

`address` varchar(20) DEFAULT NULL,

`date` varchar(20) DEFAULT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8;

-- ----------------------------

-- Records of plane

-- ----------------------------

INSERT INTO `plane` VALUES ('1', 'DZ001', '东京', '2019-9-1');

INSERT INTO `plane` VALUES ('2', 'DZ002', '上海', '2019-8-28');

INSERT INTO `plane` VALUES ('3', 'DZ003', '广州', '2019-8-29');

INSERT INTO `plane` VALUES ('4', 'DZ004', '深圳', '2019-8-29');

INSERT INTO `plane` VALUES ('5', 'DZ005', '厦门', '2019-8-30');

INSERT INTO `plane` VALUES ('6', 'DZ006', '杭州', '2019-8-30');

INSERT INTO `plane` VALUES ('7', 'DZ007', '武汉', '2019-8-30');

INSERT INTO `plane` VALUES ('8', 'DZ008', '成都', '2019-8-30');

INSERT INTO `plane` VALUES ('9', 'DZ009', '西安', '2019-8-30');

INSERT INTO `plane` VALUES ('10', 'DZ0010', '郑州', '2019-8-30');

INSERT INTO `plane` VALUES ('11', 'DZ0011', '长沙', '2019-8-30');

INSERT INTO `plane` VALUES ('12', 'DZ0012', '民权', '2019-8-31');

INSERT INTO `plane` VALUES ('13', 'DZ0013', '莫斯科', '2019-9-1');

INSERT INTO `plane` VALUES ('14', 'DZ0014', '曼谷', '2019-9-2');

INSERT INTO `plane` VALUES ('15', 'DZ0015', '阿布扎比', '2019-9-2');

主程序TestFly:

TestFly类中有实现各种功能的函数,包括 1.列出所有航班,2.按起飞时间查询,3.按目的地查询,4.删除航班,5.更新航班,6.增加航班,7.退出系统。

package com.hangkong;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.util.HashSet;

import java.util.Scanner;

import java.util.Set;

import org.omg.CosNaming.NamingContextExtPackage.StringNameHelper;

import com.mysql.jdbc.ExceptionInterceptor;

import com.sun.javafx.runtime.VersionInfo;

import com.sun.xml.internal.ws.api.pipe.NextAction;

public class TestFly {

static Connection con = null;//连接

static PreparedStatement ps = null;//模板

static ResultSet rs = null;//结果集

public static void main(String[] args) throws Exception {

System.out.println("******************************************大壮航空航班信息管理系统********************************************\n");

//show();

boolean bool = Dome();

while(bool){

bool = Dome();

}

if(!bool){

System.out.println("**************************************已成功退出大壮航空航班信息管理系统**************************************\n");

System.exit(0);

}

}

//流程

public static boolean Dome() throws Exception{

Scanner scan = new Scanner(System.in);

show();

int key = scan.nextInt();

switch (key) {

case 1:

showMessage(listMessage());

break;

case 2:{

System.out.println("输入起飞时间:");

String date = scan.next();

showMessage(selectDate(date));

}break;

case 3:{

System.out.println("输入目的地:");

String Address = scan.next();

showMessage(selectAddress(Address));

}break;

case 4:{

System.out.println("输入航班编号:");

String planeNum = scan.next();

deleteFly(planeNum);

}break;

case 5:{

System.out.println("输入航班编号和更改后目的地和时间:http://");

String planeNum = scan.next();

String Address = scan.next();

String date = scan.next();

updateFly(Address,date,planeNum);

}break;

case 6:{

System.out.println("输入航班编号、目的地、起飞时间:");

String planeNum = scan.next();

String Address = scan.next();

String date = scan.next();

creatPlane(planeNum,Address,date);

}break;

default:

//scan.close();

return false;

}

//scan.close();

return true;

}

//注册驱动,获取连接

public static Connection getCon() throws Exception{

Class.forName("com.mysql.jdbc.Driver");

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/fly", "root", "");

return con;

}

//创建初始信息,插入信息

public static void creatPlane(String planeNum,String address, String date) throws Exception{

getCon();

String sql = "insert into plane values (null,?,?,?)";

ps = con.prepareStatement(sql);

ps.setString(1, planeNum);

ps.setString(2, address);

ps.setString(3, date);

ps.executeUpdate();

ps.close();

con.close();

selectPlaneNum(planeNum);

}

//系统主菜单

public static void show(){

System.out.println("请选择操作:(1.列出所有航班,2.按起飞时间查询,3.按目的地查询,4.删除航班,5.更新航班,6.增加航班,7.退出系统)");

}

//获取结果集合输出

public static void showMessage(Set set){

System.out.println("\n********************************大壮航空***********************************\n");

if(set.size() == 0){

System.out.println("未匹配到任何数据!");

System.out.println("\n********************************大壮航空***********************************\n");

return;

}

System.out.println("Plane\t\t航班编号\t目的地\t\t起飞时间");

for( Plane value : set){

System.out.println(value);

}

System.out.println("\n********************************大壮航空***********************************\n");

}

//列出所有航班信息

public static Set listMessage() throws Exception{

getCon();

String sql = "select * from plane";

ps = con.prepareStatement(sql);

rs = ps.executeQuery();

Set set = new HashSet<>();

while(rs.next()){

int id = rs.getInt("id");

String planeNum = rs.getString("planeNum");

String address = rs.getString("address");

String dateTime = rs.getString("date");

Plane plane = new Plane(id, planeNum, address, dateTime);

set.add(plane);

}

ps.close();

con.close();

return set;

}

//按起飞时间查询

public static Set selectDate(String date) throws Exception{

getCon();

String sql = "select * from plane where date = ? ";

ps = con.prepareStatement(sql);

ps.setString(1, date);

rs = ps.executeQuery();

Set set = new HashSet<>();

//String planes = "";

while(rs.next()){

int id = rs.getInt("id");

String planeNum = rs.getString("planeNum");

String address = rs.getString("address");

String dateTime = rs.getString("date");

Plane plane = new Plane(id, planeNum, address, dateTime);

set.add(plane);

//planes += plane.toString() + "\n";

}

ps.close();

con.close();

return set;

}

//按目的地查询

public static Set selectAddress(String Address) throws Exception{

getCon();

String sql = "select * from plane where address = ? ";

ps = con.prepareStatement(sql);

ps.setString(1, Address);

rs = ps.executeQuery();

Set set = new HashSet<>();

//String planes = "";

while(rs.next()){

int id = rs.getInt("id");

String planeNum = rs.getString("planeNum");

String address = rs.getString("address");

String dateTime = rs.getString("date");

Plane plane = new Plane(id, planeNum, address, dateTime);

set.add(plane);

//planes += plane.toString() + "\n";

}

ps.close();

con.close();

return set;

}

//按航班编号

public static void selectPlaneNum(String planeNum) throws Exception{

getCon();

String sql = "select * from plane where planeNum = ? ";

ps = con.prepareStatement(sql);

ps.setString(1, planeNum);

rs = ps.executeQuery();

boolean x = true;

while(rs.next()){

if(x){

System.out.println("\n********************************大壮航空***********************************\n");

System.out.println("Plane\t\t航班编号\t目的地\t\t起飞时间");

}

int id = rs.getInt("id");

String planenum = rs.getString("planeNum");

String address = rs.getString("address");

String date = rs.getString("date");

System.out.println("Plane" + id + "\t\t" + planenum + "\t\t" + address + "\t\t" + date);

x = false;

}

System.out.println("\n********************************大壮航空***********************************\n");

}

//按航班编号删除航班

public static void deleteFly(String planeNum) throws Exception{

getCon();

String sql = "delete from plane where planeNum = ? ";

ps = con.prepareStatement(sql);

ps.setString(1, planeNum);

ps.executeUpdate();

ps.close();

con.close();

System.out.println("\n********************************大壮航空***********************************\n");

System.out.println("已删除!");

System.out.println("\n********************************大壮航空***********************************\n");

}

//按航班编号更新航班目的地和时间

public static void updateFly(String Address,String date,String planeNum) throws Exception{

getCon();

String sql = "update plane set address = ?,date = ? where planeNum = ? ";

ps = con.prepareStatement(sql);

ps.setString(1, Address);

ps.setString(2, date);

ps.setString(3, planeNum);

ps.executeUpdate();

ps.close();

con.close();

selectPlaneNum(planeNum);

}

}


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:主动防御技术之蜜罐(蜜罐攻击方式)
下一篇:使用ISE为IOS和ASA做tacacs+认证(ista认证是什么)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~