Довелось тут написать небольшую утилитку на Swing, в результате чего столкнулся с тем, что не везде есть адекватный мануал, как добавлять или удалять строки в таблице JTable. Везде советуют какие-то громоздкие конструкции, работоспособность которых еще под вопросом. В результате родилась такая инструкция.
Получаем модель данных текущей таблицы
DefaultTableModel dtm = (DefaultTableModel) jTable1.getModel();
Работа со строками и столбцами
Добавляем новые строки
Vector <String> v = new Vector<String>(2);
v.add("Блаблабла");
v.add("Бла");
dtm.addRow(v);
Добавляем строки перед определенной строкой (по индексу)
int insertIndex = 2;
dtm.insertRow(insertIndex, v);
Удаляем строки
dtm.removeRow(jTable1.getSelectedRow());
Также удаление возможно по индексу строки (начинается с 0):
dtm.removeRow(0);
Обновлять таблицу принудительно при этом не нужно, она автоматически обновится сама после выполнения указанных действий. Работа со столбцами аналогична, только вместо row
используется column
.