JTable从 SQL Server 2008 数据库添加行后不更新。
在 jaybird 2.2.5 上使用 Netbeans 8.2 我尝试将 移动到不同的地方,setModel()我已经使用过但没有任何反应。fireTableDataChanged()repaint()
String[] colNames = {"#", "Name", "Surname", "Grades", "House", "Prefect"};
DefaultTableModel model = new DefaultTableModel(colNames, 0);
Validation.newStudent(db, stringName, stringSurname); //Creates a new row with a name and a surname
int maxval = Integer.parseInt(Validation.getNumberOfStudents(db)); //Counts the amount of students in the table
String[][] rowData = new String[maxval][50];
model.setRowCount(0); //to reset the rows
for (int i = 0; i < maxval; i++){
String[] row = new String[maxval];
for (int j = 0; j < maxval; j++){
rowData[i][0] = Integer.toString(i+1);
rowData[i][1] = Validation.listStudentNames(db).get(i);
rowData[i][2] = Validation.listStudentSurnames(db).get(i);
rowData[i][3] = Validation.studentsByGrade(db).get(i);
rowData[i][4] = Validation.studentsByHouse(db).get(i);
if (Validation.listPrefects(db).get(i) == null){ //checks if a student is a prefect
rowData[i][5] = "No";
}else{
rowData[i][5] = "Yes";
}
row[j] = rowData[i][j];
}
model.addRow(row);
}teacherContentTable.setModel(model);
该表应该与新学生一起更新,但它保留了旧表模型。