为什么效果出不来啊?

来源:互联网 发布:sql必知必会怎么样 编辑:程序博客网 时间:2024/06/06 15:56

 我正在做一个 学生信息管理程序  但是效果始终出不来!我检查程序很多遍了,但是没有发现问题!请各为高手指教!帮帮忙,谢谢了!

import javax.swing.UIManager;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;
import java.lang.Object;
import java.sql.*;
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.table.*;
//import com.sun.jlex.internal.CSet;
public class StuAddQuerySysApp{
   private boolean packFrame=false;
    public StuAddQuerySysApp(){
      StuAddQuerySysFrame frame=new StuAddQuerySysFrame();
   if(packFrame){
   frame.pack();
   }
   else{
    frame.validate();
   }
   Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();
   Dimension frameSize=frame.getSize();
   if(frameSize.height>screenSize.height){
    frameSize.height=screenSize.height-100;
  }
   if(frameSize.width>screenSize.width){
    frameSize.width=screenSize.width;
  }
  frame.setLocation((screenSize.width-frameSize.width)/2,(screenSize.height-frameSize.height)/2);
  frame.setVisible(true);
  }
  public static void main(String[] args){
   try{
    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
   }
   catch(Exception e){
    e.printStackTrace();
   }
   new StuAddQuerySysApp();
  }
}
class StuAddQuerySysFrame extends JFrame{
  private JPanel contentPane;
  private FlowLayout xYLayout1 = new FlowLayout();
  private Label label1 = new Label();
  private TextField stunumField = new TextField(10);
  private TextField nameField = new TextField(15);
  private Label label2 = new Label();
  private TextField ageField = new TextField(8);
  private Label label3 = new Label();
  private TextField sexField = new TextField(8);
  private Label label4 = new Label();
  private TextField departmentField = new TextField(18);
  private Label label5 = new Label();
  private TextField teleField = new TextField(12);
  private Label label6 = new Label();
  private TextField emailField = new TextField(18);
  private Label label7 = new Label();
  private Button addrecordButton = new Button();
  private Button deleteButton = new Button();
  private Button refreshButton = new Button();
  private Button stunuqueryButton = new Button();
  private Button allrecordButton = new Button();
  Vector vector;
  String title[] = {
      "学号", "姓名", "年龄", "性别", "系名", "电话", "email地址"};

  Connection connection = null;
  ResultSet rSet = null;
  Statement statement = null;
  AbstractTableModel tm;
    private Statement statment;
    private String sql1;
    private Object stament;
    private Object departmenField;
    private String sqll;
    private Object departementField;
    private PopupMenu stunumqueryButton;
    public StuAddQuerySysFrame() {
    enableEvents(AWTEvent.WINDOW_EVENT_MASK);
    try {
      jbInit();
    }
    catch (Exception e) {
      e.printStackTrace();
    }
  }

  private void jbInit() throws Exception {
    contentPane = (JPanel)this.getContentPane();
    label1.setText("学号");
    contentPane.setLayout(xYLayout1);
    this.setSize(new Dimension(550, 350));
    this.setTitle("学生地址表查询系统");
    label2.setText("姓名");
    label3.setText("年龄");
    label4.setText("性别");
    label5.setText("系别");
    label6.setText("电话");
    label7.setText("EMAIL地址");
    addrecordButton.setLabel("添加");
    deleteButton.setLabel("删除");
    refreshButton.setLabel("更新");
    stunumqueryButton.setLabel("学号查询");
    allrecordButton.setLabel("全部记录");
    addrecordButton.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(ActionEvent e) {
        addrecordButton_actionPerformed(e);
      }
    });
    deleteButton.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(ActionEvent e) {
        deleteButton_actionPerformed(e);
      }
    });
    refreshButton.addActionListener(new java.awt.event.ActionListener() {

      public void actionPerformed(ActionEvent e) {
        refreshButton_actionPerformed(e);
      }
    });
    stunumqueryButton.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(ActionEvent e) {
        stunumqueryButton_actionPerformed(e);
      }
    });
    allrecordButton.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(ActionEvent e) {
            allrecordButton_actionPerformed(e);
        }
    });
    contentPane.add(label1);
    contentPane.add(stunumField);
    contentPane.add(label2);
    contentPane.add(nameField);
    contentPane.add(label3);
    contentPane.add(ageField);
    contentPane.add(label4);
    contentPane.add(sexField);
    contentPane.add(label5);
    contentPane.add(departmentField);
    contentPane.add(label6);
    contentPane.add(teleField);
    contentPane.add(label7);
    contentPane.add(emailField);
    contentPane.add(addrecordButton);
    contentPane.add(deleteButton);
    contentPane.add(refreshButton);
    contentPane.add(stunumqueryButton);
    contentPane.add(allrecordButton);
    createtable();
  }

  void createtable() {
    JTable table;
    JScrollPane scroll;
    vector = new Vector();
    tm = new AbstractTableModel() {
      public int getColumnCount() {
        return title.length;
      }

      public int getRowCount() {
        return vector.size();
      }

      public Object getValueAt(int row, int column) {
        if (!vector.isEmpty()) {
          return ( (Vector) vector.elementAt(row)).elementAt(column);
        }
        else {
          return null;
        }
      }

      public void setValueAt(Object value, int row, int column) {}

      public String getColumnName(int column) {
        return title[column];
      }

      public Class getColumnClass(int c) {
        return getValueAt(0, c).getClass();
      }

      public boolean isCellEditable(int row, int column) {
        return false;
      }
    };
    table = new JTable(tm);
    table.setToolTipText("Display Query Result");
    table.setAutoResizeMode(table.AUTO_RESIZE_OFF);
    table.setCellSelectionEnabled(false);
    table.setShowHorizontalLines(true);
    table.setShowVerticalLines(true);
    scroll = new JScrollPane(table);
    scroll.setPreferredSize(new Dimension(530, 200));
    contentPane.add(scroll);
  }

  protected void processWindowEvent(WindowEvent e) {
    super.processWindowEvent(e);
    if (e.getID() == WindowEvent.WINDOW_CLOSING) {
      System.exit(0);
    }
  }

  void addrecordButton_actionPerformed(ActionEvent e) {
    try {
      Class.forName("sun.jdbc.obdc.JdbcOdbcDriover");
      String url = "jdbc:odbc:student";
      connection = DriverManager.getConnection(url);
      statement = connection.createStatement();
      String sq11 = "insert into studentbase(学号,姓名,年龄,性别,系别)values(" +
          Integer.parseInt(stunumField.getText()) + ",'" + nameField.getText() +
          "'," + Integer.parseInt(ageField.getText()) + ".'" + sexField.getText() +
          "','" + departmentField.getText() + "')";
      String sq12 = "insert into studentbase(电话,email地址,学号)values'" +
          teleField.getText() + "'," + emailField.getText() + "'," +Integer.parseInt(stunumField.getText()) + ")";
      statment.executeUpdate(sq12);
      statment.executeUpdate(sq11);
      stunumField.setText("");
      nameField.setText("");
      ageField.setText("");
      sexField.setText("");
      departmentField.setText("");
      teleField.setText("");
      emailField.setText("");
    }
    catch (SQLException ex) {
      System.out.println("/nERROR:-----SQLException-----/n");
      while (ex != null) {
        System.out.println("Message:  " + ex.getMessage());
        System.out.println("SQLState:  " + ex.getSQLState());
        System.out.println("ErrorCode:  " + ex.getErrorCode());
        ex = ex.getNextException();
      }
    }
    catch (Exception ex) {
      ex.printStackTrace();
    }
    finally {
      try {
        if (statement != null) {
          statement.close();
        }
        if (connection != null) {
          connection.close();
        }
      }
      catch (SQLException ex) {
        System.out.println("/nERROR:-----SQLException-----/n");
        System.out.println("Message:  " + ex.getMessage());
        System.out.println("SQLState:  " + ex.getSQLState());
        System.out.println("ErrorCode:  " + ex.getErrorCode());

      }
    }
  }

  void deleteButton_actionPerformed(ActionEvent e) {
    try {
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
      String url = "jdbc:odbc:student";
      connection = DriverManager.getConnection(url);
      statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                                             ResultSet.CONCUR_UPDATABLE);
      String sql = "select * from studentbase where 学号=" +
          Integer.parseInt(stunumField.getText()) + " ";
      rSet = statement.executeQuery(sql);
      if (rSet.next() == false) {
        JOptionPane msg = new JOptionPane();
        JOptionPane.showMessageDialog(StuAddQuerySysFrame.this, "数据库中没有你删除的学号",
                                      "数据库中没有你删除的学号!", 1);
      }
      else {
        String sql1 = "delete from studentbase where 学号=" +
            Integer.parseInt(stunumField.getText()) + " ";
        statement.executeUpdate(sqll);
        String sql2 = "delete from studebtaddress where 学号=" +
            Integer.parseInt(stunumField.getText()) + " ";
        statement.executeUpdate(sql2);
        stunumField.setText("");
        nameField.setText("");
        ageField.setText("");
        sexField.setText("");
        departmentField.setText("");
        teleField.setText("");
        emailField.setText("");

      }
    }
    catch (SQLException ex) {
      System.out.println("/nERROR:-----SQLException-----/n");
      while (ex != null) {
        System.out.println("Message:  " + ex.getMessage());
        System.out.println("SQLState:  " + ex.getSQLState());
        System.out.println("ErrorCode:  " + ex.getErrorCode());
        ex = ex.getNextException();

      }
    }
    catch (Exception ex) {
      ex.printStackTrace();
    }
    finally {
      try {
        if (statement != null) {
          statement.close();
        }
        if (connection != null) {
          connection.close();
        }
      }

      catch (SQLException ex) {
        System.out.println("/nERROR:-----SQLException-----/n");
        System.out.println("Message:  " + ex.getMessage());
        System.out.println("SQLState:  " + ex.getSQLState());
        System.out.println("ErrorCode:  " + ex.getErrorCode());
      }

    }
  }

  void refreshButton_actionPerformed(ActionEvent e) {
    try {
      Class.forName("sun.jdbc.Odbc.JdbcOdbcDriver");
      String url = "jdbc:odbc:student";
      connection = DriverManager.getConnection(url);
      statement = connection.createStatement();
      String sqll = "update studentbase set 姓名='" + nameField.getText() +
          "',年龄=" + Integer.parseInt(ageField.getText()) + ",性别='" +
          sexField.getText() + "',系别='" + departmentField.getText() +
          "' where 学号=" + Integer.parseInt(stunumField.getText()) + " ";
      statement.executeUpdate(sql1);
      String sql2 = "update studentaddress set 电话='" + teleField.getText() +
          "',email 地址='" + emailField.getText() + "' where 学号=" +
          Integer.parseInt(stunumField.getText()) + " ";
      statement.executeUpdate(sql2);
      stunumField.setText(" ");
      nameField.setText(" ");
      ageField.setText(" ");
      sexField.setText(" ");
      departmentField.setText(" ");
      teleField.setText(" ");
      emailField.setText(" ");
    }
    catch (SQLException ex) {
      System.out.println("/nERROR:----- SQLException -----/n");
      while (ex != null) {
        System.out.println("Message: " + ex.getMessage());
        System.out.println("SQLState: " + ex.getSQLState());
        System.out.println("ErrorCode: " + ex.getErrorCode());
        ex = ex.getNextException();
      }
    }
    catch (Exception ex) {
      ex.printStackTrace();
    }
    finally {
      try {
        if (statement != null) {
          statement.close();
        }
        if (connection != null) {
          connection.close();
        }
      }
      catch (SQLException ex) {
        System.out.println("/nERROR:----- SQLException -----/n");
        System.out.println("Message: " + ex.getMessage());
        System.out.println("SQLState: " + ex.getSQLState());
        System.out.println("ErrorCode: " + ex.getErrorCode());
      }
    }
  }

  void stunumqueryButton_actionPerformed(ActionEvent e) {
    try {
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
      String url = "jdbc:odbc:student";
      connection = DriverManager.getConnection(url);
      statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                                             ResultSet.CONCUR_UPDATABLE);
      String sql = "select * from studentbase where 学号=" +
          Integer.parseInt(stunumField.getText());
      rSet = statement.executeQuery(sql);
      if (rSet.next() == false) {
        JOptionPane msg = new JOptionPane();
        JOptionPane.showMessageDialog(StuAddQuerySysFrame.this, "数据库中没有您查询的学号",
                                      "数据库中没有您查询的学号!", 1);
      }
      else {
        sql = "select studentbase.学号,姓名,年龄,性别,系别,电话,email 地址 from studentbase inner join studentaddress on(studentbase.学号=studentaddress.学号) where studentbase.学号=" +
            Integer.parseInt(stunumField.getText()) + " ";
        ResultSet rs = statement.executeQuery(sql);
        stunumField.setText("");
        vector.removeAllElements();
        tm.fireTableStructureChanged();
        while (rs.next()) {
          Vector rec_vector = new Vector();
          rec_vector.addElement(String.valueOf(rs.getInt(1)));
          rec_vector.addElement(rs.getString(2));
          rec_vector.addElement(String.valueOf(rs.getInt(3)));
          rec_vector.addElement(rs.getString(4));
          rec_vector.addElement(rs.getString(5));
          rec_vector.addElement(rs.getString(6));
          rec_vector.addElement(rs.getString(7));
          vector.addElement(rec_vector);
        }
        tm.fireTableStructureChanged();
      }
    }
    catch (SQLException ex) {
      System.out.println("/nERROR:----- SQLException -----/n");
      while (ex != null) {
        System.out.println("Message: " + ex.getMessage());
        System.out.println("SQLState: " + ex.getSQLState());
        System.out.println("ErrorCode: " + ex.getErrorCode());
      }
    }
    catch (Exception ex) {
      ex.printStackTrace();
    }
    finally {
      try {
        if (statement != null) {
          statement.close();
        }
        if (connection != null) {
          connection.close();
        }
      }
      catch (SQLException ex) {
        System.out.println("/nEROR:---- SQLException ----/n");
        System.out.println("Message: " + ex.getMessage());
        System.out.println("SQLState: " + ex.getSQLState());
        System.out.println("ErrorCode: " + ex.getErrorCode());
      }
    }
  }

  void allrecordButton_actionPerformed(ActionEvent e) {
    try {
      Class.forName("sun.jdbc.odbc.JdbcodbcDriver");
      String url = "jdbc:odbc:student";
      connection = DriverManager.getConnection(url);
      statment = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                                            ResultSet.CONCUR_UPDATABLE);
      String sql = "select studentbase.学号,姓名,年龄,系别,电话,email地址 from studentbase inner join studentaddress on(studentbase.学号=studentadress.学号)";
      rSet = statement.executeQuery(sql);
      vector.removeAllElements();
      tm.fireTableStructureChanged();
      while (rSet.next()) {
        Vector rec_vector = new Vector();
        rec_vector.addElement(String.valueOf(rSet.getInt(1)));
        rec_vector.addElement(rSet.getString(2));
        rec_vector.addElement(String.valueOf(rSet.getInt(3)));
        rec_vector.addElement(rSet.getString(4));
        rec_vector.addElement(rSet.getString(5));
        rec_vector.addElement(rSet.getString(6));
        rec_vector.addElement(rSet.getString(7));
        vector.addElement(rec_vector);
      }
      tm.fireTableStructureChanged();
    }
    catch (SQLException ex) {
      System.out.println("/nERROR: ----SQLException ----/n");
      while (ex != null) {
        System.out.println("Message: " + ex.getMessage());
        System.out.println("SQLState: " + ex.getMessage());
        System.out.println("ErrorCode: " + ex.getMessage());
        ex = ex.getNextException();
      }
    }
    catch (Exception ex) {
      ex.printStackTrace();
    }
    finally {
      try {
        if (statement != null) {
          statement.close();
        }
        if (statement != null) {
          connection.close();
        }
      }
      catch (SQLException ex) {
        System.out.println("/nERROR:----SQLException----/n");
        System.out.println("Message: " + ex.getMessage());
        System.out.println("SQLState: " + ex.getSQLState());
        System.out.println("ErrorCode: " + ex.getErrorCode());
      }
    }
  }
}

原创粉丝点击