在另一个jframe中输入记录后刷新一个jframe中显示的数据库表记录

时间:2018-10-30 12:02:58

标签: java sql

jframe A在“运行”时显示数据库中的表记录。以下是在jframe A中显示“çlass_one”记录的代码。

private void display_class_one(){
    try{
    String sql ="SELECT PUPIL_ID,NAME,AGE,CONTACT FROM CLASS_ONE";  
    pst=con.prepareStatement(sql);
    rs=pst.executeQuery();
    inventoryList.setModel(DbUtils.resultSetToTableModel(rs));
    }
    catch(Exception e){
    e.getMessage();
    }
    finally{
    try{
    rs.close();
    pst.close();
    }
    catch(Exception e){
      }
    }
    }

jframe B用于将新记录输入数据库的class_one表中。在jtextfields中填充记录后,在jframe B上单击submit_button时,以下代码执行此操作:

 private void submit_buttonActionPerformed(java.awt.event.ActionEvent evt) {                                         
    try{
    String sql = "INSERT CLASS_ONE (PUPIL_ID,NAME,AGE,CONTACT) VALUES (?,?,?,?)";
    pst=con.prepareStatement(sql);
    pst.setString(1,ID.getText());
    pst.setString(2,Name.getText());
    pst.setString(3,age.getSelectedItem().toString());
    pst.setString(4,contact.getText());
    pst.execute();
    JOptionPane.showMessageDialog(null,"pupil name saved successfully");
    Name.setText("");age.setSelectedIndex(0);contact.setText("");id.setText("");

    }catch(SQLException | HeadlessException ep){
    JOptionPane.showMessageDialog(null,ep);
    }finally{
                try{
                    rs.close();
                    pst.close();
                }
                catch(Exception ep){
                    ep.getMessage();
                }

            } 
    // TODO add your handling code here:
    } 

将这些记录成功发送到数据库表后,我必须单击一个刷新按钮,该按钮具有用于显示数据库表的代码。 在我看到新记录清晰地显示在jframe A的jtable中之前。refresh_button具有用于在jtable中显示表记录的方法名称,即display_class_one();
我的问题是如何将记录填充到数据库表中,并查看记录自动显示在jframe B的jtable上,而不必按刷新按钮。请帮我。

0 个答案:

没有答案