使用javaswing中的复选框从数据库中删除

时间:2017-03-10 23:12:52

标签: java swing netbeans

嘿伙计们,我有JTable从数据库加载信息,第一个列是一个复选框,但当我检查它删除它dosn做任何事情,有什么帮助吗?

  for(int i=0 ;i<jTable1.getRowCount();i++){
                    if((boolean)jTable1.getValueAt(jTable1.getSelectedRows()[i] ,0).equals(true)){
                        state.addBatch("delete from employees where employeenumber = " + jTable1.getValueAt(jTable1.getSelectedRows()[i], 1));
                    }
                    state.executeBatch();                    
                }

我使用了这个,它在线程中说出异常&#34; AWT-EventQueue-0&#34; java.lang.NullPointerException

                  for(int i=0 ;i<jTable1.getRowCount();i++){
           try {
               if((boolean)jTable1.getValueAt(i ,0).equals(true)){
                   state.addBatch("delete from employees where employeenumber = " + jTable1.getValueAt(jTable1.getSelectedRows()[i], 1));
               }                    
               state.executeBatch();
           } catch (SQLException ex) {
               Logger.getLogger(checkbox_in_jtable_Frame.class.getName()).log(Level.SEVERE, null, ex);
           }
            }

1 个答案:

答案 0 :(得分:0)

嗯,这只是一个建议,但你可以添加一个{save}或“commit”button。在button中,您可以foreach loop检查行中status的{​​{1}},只需checkbox个简单条件就可以执行if-else或只是query ids push进行批量array

否则,您可以在query添加listenningchanged event,然后在checkbox中检索该行的values并执行query,更多动态的。