当前位置:   article > 正文

Java——Demo仿12306窗口实现购买火车票<MySQL>_12306 java gui

12306 java gui


绪:

Java——Demo使用GUI并连接数据库实现购买火车票<MySQL>基础上

  1. 修改了车次查找

    • 取消了按车次名查找

    • 增添了根据起点站→和终点站进行查询

  2. 修改了点击购买按钮弹出下单页面

    • 取消了购买按钮
    • 增添了根据查找的车次,点击其中一行,弹出下单页面,车次名自动填充

成品样例

修改地方

  1. 【tickets数据表】添加id列,设置主键和自动增长,后续用来根据行和id查询车次

  2. 既然【tickets数据表】改了,那么【tickets.java类】也要添加id属性

  3. 主窗口去除购买按钮

  4. 查找输入文本框修改为起始站输入框和终点站文本框

  5. 查找按钮的点击事件改为

    		// 查找按钮
    		button_search.addMouseListener(new MouseAdapter() {
    			@Override
    			public void mouseClicked(MouseEvent arg0) {
    				Connection con = null;
    				try {
    					con = source.getConnection();
    					String start = searchStartText.getText();
    					String end = searchEndText.getText();
    
    					String sql = "SELECT * FROM tickets WHERE START=? AND END=?";
    					loadticket(textArea_1, sql, start, end);
    
    				} catch (SQLException e) {
    					e.printStackTrace();
    				} finally {
    					if (con != null)
    						DbUtils.closeQuietly(con);
    				}
    
    			}
    		});
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    loadticket()方法:

     // 打印tickets数据表中的所有车票信息
     public void loadticket(JTextArea textArea, String sql, Object... args) {
     	Connection con = null;
     	try {
     		// 获取连接
     		con = source.getConnection();
    
     		BeanListHandler<Tickets> ticketbean = new BeanListHandler<Tickets>(Tickets.class);
    
     		List<Tickets> ticketlist = null;
    
     		if (args.length == 0) {
     			ticketlist = runner.query(con, sql, ticketbean);
     		} else {
     			ticketlist = runner.query(con, sql, ticketbean, args[0], args[1]);
     		}
    
     		if (ticketlist.size() == 0 && args.length > 0) {
     			textArea.setText(ticketload + "未找到该车次");
     		} else {
     			Iterator<Tickets> iter = ticketlist.iterator();
     			String ticstr = "";
     			while (iter.hasNext()) {
     				Tickets ticket = iter.next();
     				ticstr += "	" + ticket.getName() + "\t" + ticket.getStart() + "\t" + ticket.getEnd() + "\t"
     						+ ticket.getPrice() + "\t" + ticket.getNumber() + "\n";
     			}
     			textArea.setText(ticketload + ticstr);
     		}
    
     	} catch (SQLException e1) {
     		e1.printStackTrace();
     	} finally {
     		// 释放连接
     		DbUtils.closeQuietly(con);
     	}
     }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37

    如果用id查找会有些不足,因为id是自动增长,删除之后也不会从1开始,各位勇士可以想想办法解决,

    声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/632135
推荐阅读
相关标签