基于java+mysql的Swing+MySQL火车票售票管理系统

运行环境

Java≥8、MySQL≥5.7

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

管理员管理车票和用户、用户购买车票等

技术框架

Java Swing MySQL


        JLabel label = new JLabel("到达站:");label.setBounds(280, 65, 146, 23);add(label);txtstation_arrival = new JTextField();txtstation_arrival.setBounds(350, 65, 146, 23);add(txtstation_arrival);txtstation_arrival.setColumns(10);JLabel label1 = new JLabel("乘车站:");label1.setBounds(280, 97, 146, 23);add(label1);txtstation_depart = new JTextField();txtstation_depart.setBounds(350, 97, 146, 23);add(txtstation_depart);txtstation_arrival.setColumns(10);JLabel label_20 = new JLabel("发车日期:");label_20.setBounds(280, 130, 146, 23);add(label_20);txtdepart_date = new JTextField();txtdepart_date.setBounds(350, 130, 146, 23);add(txtdepart_date);txtdepart_date.setColumns(10);
        return flag;}@Overridepublic boolean addBlance(int userid, int yuan) throws SQLException {System.out.println(userid + "----" + yuan);boolean flag = false;String sql = "update user set balance=balance+? where userid = ?";Connection con = Util.getConnection();PreparedStatement stmt = con.prepareStatement(sql);stmt.setInt(1, yuan);stmt.setInt(2, userid);int result = stmt.executeUpdate();ResultSet rr = null;System.out.println(sql);if (result >= 1) {flag = true;}
                        , seattype, tickettype, tickets_left, fares, ticket_office);try {ticketimpl.update(ticket);} catch (SQLException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}try {loadData();} catch (SQLException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}});}
        List<User> user = new ArrayList<>();while (rs.next()) {int userid0 = rs.getInt(1);String name = rs.getString(2);String identity_number = rs.getString(3);String account = rs.getString(4);String password = rs.getString(5);User user0 = new User(userid0, name, identity_number, account, password);user.add(user0);}Util.closeAll(con, stmt, rs);return user;}
                } catch (Exception e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}});btnNewButton.setBounds(320, 400, 116, 23);add(btnNewButton);}}
package ui;
/*** 用户查找*/import java.awt.BorderLayout;
import java.sql.SQLException;
import java.util.List;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import dao.UserTicketDao;
import entity.UserTicket;
import util.Util;public class UserTicketImpl implements UserTicketDao {@Overridepublic boolean add(int userticketuserid, int userticketticketid, String userticketname,String userticketidentity_number, String userticketstation_arrival, String userticketstation_depart,String userticketdepart_date, String userticketdepart_time, int userticketticket_number,String userticketseattype, String usertickettickettype, String userticketfares,String userticketticket_office) throws Exception {Connection con = Util.getConnection();String sqladd = "insert into userticket(userticketuserid,userticketticketid,userticketname,userticketidentity_number,userticketstation_arrival,"+ "userticketstation_depart,userticketdepart_date,"+ "userticketdepart_time,userticketticket_number,userticketseattype,"+ "usertickettickettype,userticketfares,userticketticket_office) values"+ "(?,?,?,?,?,?,?,?,?,?,?,?,?)";PreparedStatement stmt = con.prepareStatement(sqladd);stmt.setInt(1, userticketuserid);
                } else if (txtticket_number.getText().equals("")) {JOptionPane.showMessageDialog(null, "请输入车次", "警告对话框", JOptionPane.WARNING_MESSAGE);return;} else if (txttickets_left.getText().equals("")) {JOptionPane.showMessageDialog(null, "请输入余票", "警告对话框", JOptionPane.WARNING_MESSAGE);return;} else if (txtfares.getText().equals("")) {JOptionPane.showMessageDialog(null, "请输入票价", "警告对话框", JOptionPane.WARNING_MESSAGE);return;} else if (txtticket_office.getText().equals("")) {JOptionPane.showMessageDialog(null, "请输入发售站", "警告对话框", JOptionPane.WARNING_MESSAGE);return;}int ticketid = ticket.getTicketid();
JScrollPane scrollPane = new JScrollPane();add(scrollPane, BorderLayout.CENTER);table = new JTable();scrollPane.setColumnHeaderView(table);// 初始化存储表格数据的对象model = new DefaultTableModel(new Object[][]{}, new String[]{"Ticket ID","Arrive", "Go", "Go Date", "Go Time", "Car Id", "Seat Type", "Car Type", "Free Ticket", "Ticket Price", "Sell out"});// 将数据绑定到对象中table.setModel(model);table.setRowHeight(30);scrollPane.setViewportView(table);tickettypeDao = new TickettypeImpl();ticketDao = new TicketImpl();loadData();// 为表格绑定修改值后的事件model.addTableModelListener(new TableModelListener() {
        }Util.closeAll(con, stmt, rr);return flag;/*String sql = "select userticketuserid,userticketticketid";PreparedStatement stmt = con.prepareStatement(sql);stmt.setInt(1, ticketid);stmt.executeUpdate();ResultSet rs = null;DBcon.closeAll(stmt, rs);return true;*/}@Override
import entity.Seattype;public class AddTicket extends JPanel {private JTextField txtstation_arrival;private JTextField txtstation_depart;private JTextField txtdepart_date;private JTextField txtdepart_time;private JTextField txtticket_number;private JTextField txttickets_left;private JTextField txtfares;private JTextField txtticket_office;private JComboBox cmbtickettype;private JComboBox cmbseattype;private TickeDao ticketDao;private TickeDao seatidDao;private TicketImpl ticketimpl;private TickettypeImpl tickettypeDao;private SeattypeImpl seattypeDao;private QueryUser query;/*** Create the panel.** @param tickettypeDao
        while (rs.next()) {int ticketid0 = rs.getInt(1);String station_arrival = rs.getString(2);String station_depart = rs.getString(3);String depart_date = rs.getString(4);String depart_time = rs.getString(5);int ticket_number = (rs.getInt(6));String seattypeid = rs.getString(7);String tickettypeid = rs.getString(8);int tickets_left = rs.getInt(9);String fares = rs.getString(10);String ticket_office = rs.getString(11);Ticket ticket2 = new Ticket(ticketid0, station_arrival,station_depart, depart_date, depart_time, ticket_number,seattypeid, tickettypeid, tickets_left, fares, ticket_office);
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.sql.SQLException;
import java.util.List;public class QueryTicket extends JPanel {private JTable table;private DefaultTableModel model;// 用于存储表格数据private TickeDao ticketDao;private TicketImpl ticketimpl;private TickettypeImpl tickettypeDao;private String oldValue = "";// 保存单元格编辑 前的值/*** Create the panel.** @throws SQLException
    String userticketfares;String userticketticket_office;public int getUserticketid() {return userticketid;}public void setUserticketid(int userticketid) {this.userticketid = userticketid;}public int getUserticketuserid() {return userticketuserid;}public void setUserticketuserid(int userticketuserid) {this.userticketuserid = userticketuserid;}
        stmt.setInt(1, userticketid);stmt.executeUpdate();return true;}@Overridepublic boolean SelectUidTid(int ticketid, int userid) throws SQLException {boolean flag = true;String sql = "select userticketuserid,userticketticketid from userticket";Connection con = Util.getConnection();PreparedStatement stmt = con.prepareStatement(sql);ResultSet rr = stmt.executeQuery();while (rr.next()) {int useridd = rr.getInt(1);int ticketidd = rr.getInt(2);
                        if (fal) {boolean falg = userticketdao.buyTicket(ticketidd, usd);boolean flag1 = userticketdao.buyTicketb(ticketidd, usd);JOptionPane.showMessageDialog(null, "购买成功!");System.out.println(falg + "1" + flag1);System.out.println(usd);System.out.println(ticketidd);System.out.println();} else {JOptionPane.showMessageDialog(null, "您不能重复购买该票!");}} else {JOptionPane.showMessageDialog(null, "该票已经售罄!");
            String password = rs.getString(5);User user0 = new User(userid0, name, identity_number, account, password);user.add(user0);}Util.closeAll(con, stmt, rs);return user;}public List<User> queryAll() throws SQLException {Connection con = Util.getConnection();String sqladd = "select * from user";PreparedStatement stmt = con.prepareStatement(sqladd);ResultSet rs = stmt.executeQuery();List<User> user = new ArrayList<>();while (rs.next()) {int userid0 = rs.getInt(1);String name = rs.getString(2);String identity_number = rs.getString(3);
        if (result == JOptionPane.OK_OPTION) {int userid = Integer.valueOf(table.getValueAt(table.getSelectedRow(), 0).toString());userDao.delete(userid);loadData();}}public void updata() {if (table.getSelectedRowCount() <= 0) {JOptionPane.showMessageDialog(null, "请选择要修改的数据行");return;}int result = JOptionPane.showConfirmDialog(null, "是否确定要修改");// 判断用户是否点击













基于java+mysql的Swing+MySQL火车票售票管理系统相关推荐

  1. 基于javaweb+Swing+MySQL火车票售票管理系统

    基于javaweb+Swing+MySQL火车票售票管理系统 开发工具:eclipse/idea/myeclipse/sts等均可配置运行 适用 课程设计,大作业,毕业设计,项目练习,学习演示等 re ...

  2. 基于java+mysql的Swing+MySQL图书管理系统(java+swing+gui+mysql)

    基于java+mysql的Swing+MySQL图书管理系统(java+swing+gui+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclip ...

  3. 基于java+mysql的Swing+MySQL物业收费系统(java+gui+文档)

    基于java+mysql的Swing+MySQL物业收费系统(java+gui+文档) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclipse/sts等均可 ...

  4. java 数据库 火车票管理系统6_基于Java火车票售票管理系统

    基于Java火车票售票管理系统 熊水平 / 河池学院物理与机电工程学院 [摘 要]随着计算机的普及,信息处理量的逐渐扩大,手工处理方式已经远远不能满足人们管理活动的需要,各种工作都逐渐由手工转为自动化 ...

  5. 基于Java毕业设计伊伊物流公司的管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计伊伊物流公司的管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计伊伊物流公司的管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B ...

  6. Java Web之从零开始开发火车票售票系统( 一 )

    本章将实现用户后台管理的添加(已完成).查询(已完成).修改(已完成).删除(已完成)功能.(由于前期处于测试阶段,未对数据进行限制,后期将进行完善) 系统开发平台 任务陈述 创建数据库(trainb ...

  7. 基于JAVA林家餐厅自助点餐管理系统计算机毕业设计源码+数据库+lw文档+系统+部署

    基于JAVA林家餐厅自助点餐管理系统计算机毕业设计源码+数据库+lw文档+系统+部署 基于JAVA林家餐厅自助点餐管理系统计算机毕业设计源码+数据库+lw文档+系统+部署 本源码技术栈: 项目架构:B ...

  8. 基于JAVA预装箱式净水站可视化信息管理系统计算机毕业设计源码+系统+数据库+lw文档+部署

    基于JAVA预装箱式净水站可视化信息管理系统计算机毕业设计源码+系统+数据库+lw文档+部署 基于JAVA预装箱式净水站可视化信息管理系统计算机毕业设计源码+系统+数据库+lw文档+部署 本源码技术栈 ...

  9. 基于JAVA的机场航班起降与协调管理系统(论文+PPT+源码)

    毕业设计(论文)任务书 第1页 毕业设计(论文)题目:基于JAVA的机场航班起降与协调管理系统毕业设计(论文)要求及原始数据(资料):1.综述机场航班调度对于飞行安全的背景和意义:2.深入了解机场航班 ...

最新文章

  1. Socket心跳包机制
  2. 邀请参加活动的邀请函_邀请函||王坝镇中心幼儿园邀请家长参加期中分享活动的通知...
  3. python字符串title函数_python字符串内建函数-capitalize、title、upper
  4. oracle之单行函数之子查询之课后练习
  5. java安装pydev找不到_为什么安装成功也重启了,但是在window-preferences里找不到PyDev...
  6. android软件百分比怎么实现,Android自实现百分比布局
  7. watir-webdriver使用过程中异常
  8. shell 死循环if判断_一个简单的shell脚本问题!怎么出现了死循环呢?谢谢
  9. 003 第一个Python程序
  10. python爬取2017年统计用区划代码和城乡划分代码(截止2017年10月31日)
  11. 硬盘的结构和介绍,硬盘MBR详细介绍(超详细彩图)
  12. 机器学习基础(林軒田)笔记之七
  13. 修改NPM的默认安装路径
  14. 手机wifi延迟测试软件,测网速延迟(如何测试wifi延迟)
  15. 未来避难所:漂浮的诺亚方舟宾馆可抵御洪流
  16. 让机房温度可视化:物联网下的数据中心环境运维新方式
  17. 纯国产环境JAVA程序(Springboot + Mybatis + 达梦数据库)搭建
  18. ftok函数的作用:
  19. 对话bot语音输入交互竞品调研
  20. 按键精灵手机版 参数个数不匹配

热门文章

  1. 魔兽姓名版上显示服务器,头像上显示连击点:魔兽7.0用不习惯的看这条代码
  2. 顾维维就任百度新兴业务及技术体系市场负责人
  3. Ubuntu 安装PIXMA IP1180打印机
  4. ensp 配置DHCP
  5. 嵌入式开发使用python开发 +项目实践
  6. mac看图软件哪个好用_办公记事软件哪个好?工作记事本便签app哪个好用
  7. 电脑端微信多开批处理命令
  8. VC MFC C++ IPControl CIPAddressCtrl IP输入控件使用
  9. python龙格库塔_龙格库塔积分法
  10. 关于身份证图片加密安全技术