版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 需求分析 ( 小标题黑体五号字)系统用户管理;车票信息管理(添加、修改、删除);票务查询(站站查询、车次查询、站名查询);订票;退票;统计。2 总体设计系统流程图列车售票系统系订退退票统出务管系查理票票统询管统车站车次站站理计查查查询询询增删修加除改车车车票票票信信信息息息数据库关系表数据库表1. 列车信息总表属性名类型长度车次Char10车种Char10始发站Char10终点站Char10发时Char10到时Char102. 车票信息表属性名类型长度车次Char10座位类型Char10票价Int4数量Int43. 订票信息表属性名类型长度车次Char10座位类型Char10姓名Char1
2、0身份证号Char20联系方式Char203详细设计1. 主界面核心代码 :importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassMenu publicstaticvoidmain(String args)new Emp();classEmp private JButtonextendsJFrameimplementsActionListenerstaticfinallongserialVersionUIDb1 , b2 , b3 , b4 , b5 ;= 1L;Emp()super( " 列车售
3、票系统" );b1 = new JButton(" 系统用户管理" );b2 = new JButton(" 票务查询 " );b3 = new JButton(" 订票 " );b4 = new JButton(" 退票 " );b5 = new JButton(" 退出系统 " );setLayout(new GridLayout(5,1);add( b1 );add(b2 );add(b3 );add(b1 .addActionListener(this);b2 .addActi
4、onListener(this);b3 .addActionListener(this);b4 .addActionListener(this);b5 .addActionListener(this);addWindowListener(new winX();setLocation(550,200);setSize(240,320);setVisible(true);b4 );add(b5 );publicvoidactionPerformed(ActionEvent e)if(e.getSource()=b1 )dispose();new xtgl();if(e.getSource()=b2
5、 )dispose();new pwcx();if(e.getSource()=b3 )dispose();new dp();if(e.getSource()=b4 )dispose();new tp();if (e.getSource()=b5 )System. exit(0);2. 查询核心代码:importjava.awt.*;importjava.awt.event.*;importjava.sql.*;importjavax.swing.*;classcccxextendsJFrameimplementsActionListener privatestaticfinallongser
6、ialVersionUID= 1L;JLabellab1;JButtonb1 , b2 ;JTextFieldinput;Connectioncon ;Statementstmt ;ResultSetrs ;Stringsql;JPanelp1 , p2 , p3 ;JTextAreaa1 ;cccx()super ( " 车次查询 " );p1 = new JPanel();p2 = new JPanel();p3 = new JPanel();lab1= new JLabel("车次:");p1 .add(lab1);input= new JText
7、Field(10);p1 .add(input);b1= new JButton("查询");b2= new JButton("返回");p2.add(b1 );p2.add(b2 );a1= new JTextArea();a1.setEditable(false );p3.add(a1 );setLayout(new BorderLayout();add(p1 ,BorderLayout.NORTH);add(p2 ,BorderLayout.SOUTH);add(p3 ,BorderLayout.CENTER);b1 .addActionListe
8、ner(this);b2 .addActionListener(this);addWindowListener(new winX();setLocation(400,200);setSize(600,200);setVisible(true);publicvoidactionPerformed(ActionEvent e) if(e.getSource()=b2 )dispose();new pwcx();if(e.getSource()=tryb1 )con =DriverManager.getConnection( "jdbc:sqlserver:/localhost:1433;
9、DatabaseName=列车售票系统" , "sa", "1234");stmt= con .createStatement();rs =stmt.executeQuery("select车票信息表 . 车次 ,车种 , 始发站 , 终点站 , 发时 , 到时 , 座位类型 , 票价 , 数量from列车信息总表车票信息表where列车信息总表. 车次 = 车票信息表. 车次AND车票信息表车次 ='"+ input.getText()+"'");if(! rs .next(),.a1
10、.setText(" 没有任何列车信息" );else终点站票价a1 .setText(发时数量 n");a1 .append(" 车次到时rs .getString(车种" 车次始发站座位类型" )+ rs .getString(" 车种 " )+ rs .getString("始发站")+"" +rs.getString("终点站")+""+ rs.getString("发时")+ "" +r
11、s.getString("到时")+ ""+rs .getString(" 座位类型")+""+ rs .getString("票价")+"" +rs.getString(" 数量 " )+ "n");while ( rs .next()a1 .append(rs.getString(" 车次" )+ rs .getString(" 车种 " )+ rs.getString("始发站&q
12、uot;)+"" +rs.getString("终点站")+""+ rs.getString("发时")+ "" +rs.getString("到时")+ ""+rs .getString(" 座位类型")+""+ rs .getString("票价")+"" +rs.getString(" 数量 " )+ "n"); catch (SQ
13、LException e1)JOptionPane.showMessageDialog( null, " 数据库连接错误! " );3. 修改核心代码:import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.sql.*;class xgcp extends JFrame implements ActionListenerprivate static final long serialVersionUID = 1L;JLabel lab1,lab2,lab3,lab4,lab5;JT
14、extField t1,t2,t3;JButton b1,b2;Connection con;PreparedStatement ps,ps1;String a=""ResultSet rs;Statement stmt;JTextArea a1;JScrollPane g1;JPanel p1,p2,p3;Choice x1;xgcp()super(" 修改车票信息");p1=new JPanel();p2=new JPanel();p3=new JPanel();a1=new JTextArea();g1=new JScrollPane(a1);a1
15、.setEditable(false);lab1=new JLabel("lab2=new JLabel();车次 ");lab3=new JLabel("车次座位类型票价数量 ");lab4=new JLabel("票价 ");lab5=new JLabel("数量 ");t1=new JTextField(10);t2=new JTextField(10);t3=new JTextField(10);b1=new JButton("修改 ");b2=new JButton("返回
16、");x1=new Choice();x1.add("软卧 ");x1.add("硬座 ");p1.add(lab1);p1.add(t1);p1.add(x1);p1.add(lab4);p1.add(t2);p1.add(lab5);p1.add(t3);p3.add(b1);p3.add(b2);p3.add(lab2);p2.add(g1);p2.add(lab3);p2.setLayout(new BorderLayout();p2.add(lab3,BorderLayout.NORTH);p2.add(g1,BorderLayout
17、.CENTER);setLayout(new BorderLayout();add(p2,BorderLayout.CENTER);add(p3,BorderLayout.SOUTH);add(p1,BorderLayout.NORTH);b1.addActionListener(this);b2.addActionListener(this);addWindowListener(new winX();trycon=DriverManager.getConnection("jdbc:sqlserver:/localhost:1433;DatabaseName= 列车售票系统"
18、;,"sa","1234");stmt=con.createStatement();rs=stmt.executeQuery("SELECT * FROM车票信息表");if(!rs.next()a1.setText("没有车票信息!");elsea1.setText(rs.getString("车次")+""+rs.getString("座 位类 型")+""+rs.getString("票 价 ")+"
19、"+rs.getString("数量 ")+"n");while(rs.next()a1.append(rs.getString("车次")+""+rs.getString("座 位类 型")+""+rs.getString("票 价 ")+""+rs.getString("数量 ")+"n");catch(SQLException e1)lab2.setText("数据库连接
20、错误!");setLocation(400,150);setSize(600,400);setVisible(true);public void actionPerformed(ActionEvent e)if(e.getSource()=b2)dispose();new gl1();if(e.getSource()=b1)if(t1.getText().equals(a)lab2.setText("车次不能为空!");else trycon=DriverManager.getConnection("jdbc:sqlserver:/localhost:1
21、433;DatabaseName= 列车售票系统","sa","1234");stmt=con.createStatement();rs=stmt.executeQuery("SELECT车次FROM 车票信息表WHERE车次 ='"+t1.getText()+"'");if(!rs.next()JOptionPane.showMessageDialog(null,"没有车票信息! ");else息表WHERE车rs=stmt.executeQuery("SE
22、LECT次='"+t1.getText()+"'车次 ANDFROM 座 位订票信类型='"+x1.getSelectedItem()+"'");if(rs.next()JOptionPane.showMessageDialog(null,"已 有 人预定了该票,无法修改! ");elseSET票价ps1=con.prepareStatement("UPDATE ="+Integer.parseInt(t2.getText()+",车票信息表数量="+I
23、nteger.parseInt(t3.getText()+" WHERE车次='"+t1.getText()+"'AND 座位类型 ='"+x1.getSelectedItem()+"'");ps1.executeUpdate();JOptionPane.showMessageDialog(null,"车 票 信息已修改! ");catch(SQLException e1)JOptionPane.showMessageDialog(null,"数据库连接有误! "
24、);trycon=DriverManager.getConnection("jdbc:sqlserver:/localhost:1433;DatabaseName= 列车售票系统","sa","1234");stmt=con.createStatement();rs=stmt.executeQuery("SELECT * FROM车票信息表");if(!rs.next()a1.setText("没有车票信息!");else"+rs.getString("座a1.setText
25、(rs.getString("位类型")+"车"+rs.getString("次票 价")+"")+""+rs.getString("数量 ")+"n");while(rs.next()"+rs.getString("a1.append(rs.getString("车座 位类 型")+""+rs.getString("次票 价")+"")+"&qu
26、ot;+rs.getString("数量 ")+"n");catch(SQLException e1)lab2.setText("数据库连接错误!");4. 统计核心代码:importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjava.sql.*;publicclasstjextendsprivatestaticfinalJLabellab ;JTextAreaa1 ;JScrollPaneg1 ;JPanelp1 , p2 ;JButtonb1 , b2
27、;Statementstmt;Connectioncon ;ResultSetrs ;tj()JFramelongimplementsserialVersionUIDActionListener= 1L;super( " 总计信息 " );p1 = new JPanel();p2 = new JPanel();a1 = new JTextArea();a1 .setEditable(false);g1= new JScrollPane(a1 );lab =new JLabel(" 车次车种始发站终点站发 时到时座位类型票价数量");b1= new JBu
28、tton("修改");b2= new JButton("返回");p1.add(g1 ); p1 .add(lab);p2.add(b1 ); p2 .add(b2 );p1.setLayout(new BorderLayout();p1.add(lab ,BorderLayout.NORTH);p1.add(g1 ,BorderLayout.CENTER);setLayout(new BorderLayout();add( p1 ,BorderLayout.CENTER);add( p2 ,BorderLayout.SOUTH);trycon =Dri
29、verManager.getConnection( "jdbc:sqlserver:/localhost:1433;DatabaseName=列车售票系统" , "sa", "1234");stmt=con .createStatement();rs = stmt.executeQuery("select列车信息总表. 车次 ,种 , 始发站 , 终点站 , 发时 , 到时 , 座位类型 , 票价 , 数量from列车信息总表票信息表where列车信息总表. 车次 =车票信息表. 车次 " );if(!rs .ne
30、xt()车, 车a1 .setText(" 没有任何列车信息" );elsea1.setText(rs .getString(" 车次" )+ rs .getString(" 车种 " )+ rs .getString("始发站")+"" +rs.getString("终点站")+""+ rs .getString("发时")+ "" +rs.getString("到时")+""
31、;+rs .getString(" 座位类型")+""+ rs.getString("票价")+"" +rs.getString("数量")+"n");while ( rs .next()a1 .append(rs.getString(" 车次 " )+ rs.getString("车种 " )+ rs .getString("始发站 ")+ ""+ rs .getString(" 终点
32、站")+""+rs .getString("发时")+ " "+ rs .getString("到时")+"" +rs.getString("座位类型 ")+""+rs.getString("票价")+ "" +rs.getString("数量")+"n"); catch(SQLException e1)JOptionPane.showMessageDialog( n
33、ull ," 数据库连接错误!");addWindowListener(b1 .addActionListener(b2 .addActionListener(new winX();this);this);setSize(800,600);setLocation(300,100);setVisible(true);publicifvoidactionPerformed(ActionEvent e)(e.getSource()=b2 )dispose();new gl();5. 删除核心代码:importjava.awt.*;importjava.awt.event.*;im
34、portjavax.swing.*;importjava.sql.*;classsccpextendsJFrameimplementsActionListenerprivatestaticJLabellab1, lab2JTextFieldt1 ;JButtonb1 , b2 ;Connectioncon ;PreparedStatementStringa ="" ;ResultSetrs ;Statementstmt;JTextAreaa1 ;JScrollPaneg1 ;JPanelp1 , p2 ;Choicex1 ;sccp()finallong, lab3;ps
35、, ps1 ;serialVersionUID= 1L;super( " 删除车票信息" );p1 = new JPanel();p2 = new JPanel();a1 = new JTextArea();g1 = new JScrollPane(a1 );a1 .setEditable(false);lab1= new JLabel("车次");lab2= new JLabel();lab3= new JLabel(" 车次座位类型票价数量" );t1= new JTextField(10);b1= new JButton(&qu
36、ot;删除");b2= new JButton("返回");x1= new Choice();x1.add(" 软卧 " ); x1 .add("硬座");p1 .add(lab1); p1 .add(t1); p1 .add( x1 ); p1 .add(b1 ); p1 .add(b2); p1 .add(lab2 );p2.add(g1 );p2 .add(lab3);p2.setLayout(new BorderLayout();p2.add(lab3,BorderLayout.NORTH);p2.add(g1 ,B
37、orderLayout.CENTER);setLayout(new BorderLayout();add(p2 ,BorderLayout.CENTER);add(p1 ,BorderLayout.SOUTH);b1 .addActionListener(this);b2 .addActionListener(this);addWindowListener(new winX();trycon =DriverManager.getConnection( "jdbc:sqlserver:/localhost:1433;DatabaseName=列车售票系统" , "s
38、a", "1234");stmt=con .createStatement();rs = stmt.executeQuery("SELECT* FROM 车票信息表");if(!rs .next()a1 .setText(" 没有车票信息!" );elsea1 .setText(rs .getString(" 车次 " )+ "" +rs .getString(" 座位类型 " )+ ""+ rs .getString(" 票价 &qu
39、ot; )+ "" +rs .getString(" 数量 " )+ "n");while( rs .next()a1 .append(rs .getString(" 车次 " )+ "" +rs .getString(" 座位类型 " )+ ""+ rs .getString(" 票价 " )+ "" +rs .getString(" 数量 " )+ "n"); catch(
40、SQLException e1)lab2.setText(" 数据库连接错误!" );setLocation(400,150);setSize(450,500);setVisible(true);publicvoidactionPerformed(ActionEvent e)if(e.getSource()=b2 )dispose();new gl1();if(e.getSource()=b1 )if( t1 .getText().equals(a )lab2.setText(" 车次不能为空!" );elsetrycon =DriverManager.getConnection( "jdbc:sqlserver:/localhost:1433;DatabaseName=列车售票系统" , "sa", "1234"stmt= con .createStatement();rs =stmt.executeQuery("SELECT车次表 WHERE 车次 ='"+t1 .getText()+"'");if(! rs .next()JOptionPane.showMe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年商丘学院单招综合素质考试题库附参考答案详解(b卷)
- 2026年合肥幼儿师范高等专科学校单招职业适应性测试题库带答案详解(能力提升)
- 2026年四川工业科技学院单招职业技能测试题库附答案详解(达标题)
- 2026年四川化工职业技术学院单招职业倾向性考试题库附参考答案详解(突破训练)
- 产品技术规范概述及要点解析
- 产后心理健康的心理健康与心理健康研究
- 科学研究的艺术,战略,和个人选择
- 产后发热的饮食禁忌
- 儿科用药护理
- 稻香镇职业规划
- 大学英语语法重点总结
- 2026年大学物理力学知识点精讲与习题试卷及答案
- 守正创新担使命凝心聚力启新程-校长在2026年春季学期全体教师开学大会上的讲话
- 教师招聘考试公共基础知识试题及答案
- 药房绿色通道制度规范
- 【语文】湖南省长沙市天心区赤岭路学校小学一年级上册期末试卷(含答案)
- 涉融资性贸易案件审判白皮书(2020-2024)-上海二中院
- 2026年枣庄科技职业学院单招职业适应性测试必刷测试卷含答案
- 2025年北京市2025年中考历史真题试卷(含答案解析)
- 艺术专业就业前景
- 临床研究方案中的受试者招募策略
评论
0/150
提交评论