列车时刻查询及售票系统_第1页
列车时刻查询及售票系统_第2页
列车时刻查询及售票系统_第3页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论