Java 火车票售票系统 火车票预定-窗体程序 附详细设计文档

开发环境

开发语言为Java,开发环境Eclipse或者IDEA都可以。数据库采用:MySQL。运行主程序,或者执行打开JAR文件即可以运行本程序。

系统框架

利用JDK自带的SWING框架开发,不需要安装第三方JAR包。MySQL数据库,纯窗体模式,直接运行Main文件即可以。同时带有详细得设计文档

主要功能

火车票售票系统用Java语言编写,是一个典型的C/S架构的程序。系统分为系统管理员、顾客两种用户。

1 系统管理员的主要功能有以下一些功能:

用户管理:对系统中的用户进行日常的维护。包括增加用户、删除用户、修改用户

售票点管理:对系统中的售票点进行日常的维护。包括增加售票点、删除售票点、修改售票点

售票员管理:对售票员进行日常维护,包括增加、删除、修改操作

火车管理:包括车次号、发车时间、到站时间、容量

火车行程管理:火车经过哪些城市,

订单管理:查看系统中所有的订单和删除订单

2 普通用户的主要功能有以下一些功能

用户登陆:输入用户名和密码,登陆到系统中

火车票预定:根据条件查询出符合条件的城市,然后点击预定。火车票分:硬件票、卧铺票、无座票

订单查询:查询用户所订购的火车票信息

运行效果

关键代码

package ui.manager;


import javax.swing.*;
import java.awt.*;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

import bean.Manager;
import ui.seller.SellerFrame;
import ui.widget.Measurable;
import utils.Constants;
import utils.LookUtils;
import utils.WidgetUtils;



public class ManagerFrame extends JFrame implements Measurable {

    private CustomerPanel customerPanel = new CustomerPanel();
    private ManagerPanel managerPanel = new ManagerPanel();
    private SellPointPanel sellPointPanel = new SellPointPanel();
    private TrainPanel trainPanel = new TrainPanel();
    private TrainSchedulePanel schedulePanel = new TrainSchedulePanel();
    private TrainOrderPanel orderPanel = new TrainOrderPanel();
    private static boolean windowsIsAlive = true;
    @SuppressWarnings("WeakerAccess")
    public ManagerFrame() {
        Constants.checkManagerType(Manager.TYPE_SUPERUSER);
        setTitle("火车票管理系统");
        initComponents();
        setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
        addWindowListener(new WindowListener(){

            @Override
            public void windowActivated(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }

            @Override
            public void windowClosed(WindowEvent e) {
                // TODO Auto-generated method stub
                setWindowsIsAlive(false);
            }



            @Override
            public void windowClosing(WindowEvent e) {
                // TODO Auto-generated method stub
                int option= JOptionPane.showConfirmDialog(
                        ManagerFrame.this, "确定退出系统? ", "提示 ",JOptionPane.YES_NO_OPTION);
                if(option==JOptionPane.YES_OPTION)
                {
                    System.exit(0);
                }
                else
                {
                    return;
                }
            }

            @Override
            public void windowDeactivated(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }

            @Override
            public void windowDeiconified(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }

            @Override
            public void windowIconified(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }

            @Override
            public void windowOpened(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }
            
        });
    }

    private void initComponents(){
        JTabbedPane tabbedPane1 = new JTabbedPane();
        tabbedPane1.setFont(new Font("宋体", Font.PLAIN, 14));
        tabbedPane1.addTab("用户管理", customerPanel);
        tabbedPane1.addTab("售票员管理", managerPanel);
        tabbedPane1.addTab("售票点管理", sellPointPanel);
        tabbedPane1.addTab("列车管理", trainPanel);
        tabbedPane1.addTab("列车行程管理", schedulePanel);
        tabbedPane1.addTab("订单管理", orderPanel);

        add(tabbedPane1);
    }


    public static void main(String[] args) {
        LookUtils.beautyEye();
        WidgetUtils.popup(ManagerFrame.class);
    }

    @Override
    public int width() {
        return 1024;
    }

    @Override
    public int height() {
        return 768;
    }

    public static boolean isWindowsIsAlive() {
        return windowsIsAlive;
    }
    private void setWindowsIsAlive(boolean b) {
        // TODO Auto-generated method stub
        
    }
}
  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机程序

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值