想要在这个界面中以表格的形式显示出从MYSQL数据库查询出的数据(已实现),并直接在表格中进行删除和修改,按下删除和修改按钮后进行保存。现在就是删除和修改功能没有完成。提示错误...
想要在这个界面中以表格的形式显示出从MYSQL数据库查询出的数据(已实现),并直接在表格中进行删除和修改,按下删除和修改按钮后进行保存。现在就是删除和修改功能没有完成。
提示错误为:Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: -1
求各位大神解决这个问题或者告诉我这两个功能该如何写!多谢!
public void actionPerformed(ActionEvent e){
Object obj = e.getSource();
connection();
Object[] cloum1={"学号","姓名","课程号","课程名","成绩"};
Object[][] row1=new Object[50][5];
table1=new JTable(row1,cloum1);
scrollpane1=new JScrollPane(table1);
jp.add(scrollpane1);
scrollpane1.setBounds(50,50,500,400);
if(obj == b1){
try{
String s1 = tf.getText().trim();
if(list1.getSelectedItem().toString().equals("姓名")){
if(b1.equals(e.getSource())){
for(int i=0;i<50;i++)
for(int j=0;j<5;j++)
table1.setValueAt("", i, j);
ResultSet rs = state.executeQuery( "select grade.学号,姓名,课程号,课程名,成绩 from grade where 姓名 = '"+s1+"'");
int k=-1;
while (rs.next()) {
++k;
String 学号 = rs.getString(1);
……
table1.setValueAt(学号,k,0);
……
}
}
}
}
catch(SQLException e2){……}
}
}
try{
int selectedRowIndex = table1.getSelectedRow(); // 取得用户所选单行
String studentID=row1[selectedRowIndex][0].toString();//获取用户选择的学号//提示错误语句
if(obj == b2){//修改 }
if(obj == b3){//删除 }
}
catch(SQLException e2){…}
}
展开