Обновление jTable с базой данных с NetBeans - PullRequest
0 голосов
/ 21 июня 2011

Я разрабатываю приложение базы данных с Java и MySQL в качестве базы данных. Я использую Netbeans в качестве инструмента разработки.

Мне нужно отобразить сохраненную базу данных в JTable.

Теперь, когда я добавляю данные в базу данных с помощью запроса. JTable не показывает обновленные данные мгновенно. Мне нужно перезапустить приложение, т.е. запустить его снова.

Теперь мне нужно знать, как обновить JTable при изменении базы данных.

Пожалуйста, предоставьте мне шаги или пример кодирования, потому что я не могу найти определенный пример кодирования в Интернете.

Ответы [ 4 ]

2 голосов
/ 21 июня 2011

Всякий раз, когда данные в базе данных изменяются, вам необходимо заново создать TableModel, а затем обновить таблицу с новой моделью:

Модель TableModel = ...

table.setModel( model );
2 голосов
/ 21 июня 2011

Может быть, этого достаточно, чтобы запустить изменения через модель таблицы:

yourTable.getModel().fireTableDataChanged()
1 голос
/ 11 августа 2016

Я столкнулся с той же проблемой, затем я создал функцию с именем "UPDATEtable ()" в котором я поместил код подключения и вызвал эту функцию, когда это было необходимо для ввода данных в Jtable из Mysql. Для кнопки «Обновить» я сначала удалил данные из таблицы, а затем вызвал ту же функцию.

Вот код :-( Имя переменной таблицы - TB1)

private void **UPDATEtable()**{
        DefaultTableModel model=(DefaultTableModel) TB1.getModel();
try{



  stmt= con.createStatement();
    String query="SELECT * FROM goods ORDER BY order_num DESC;";
ResultSet rs = stmt.executeQuery(query);
    while(rs.next()){
        String PID = rs.getString("PID");
     String Pname = rs.getString("Pname");
       String NUM = rs.getString("order_num");
      model.addRow(new Object[] {PID ,Pname,NUM);

    }


}


catch(Exception e)
{
    System.out.print(e);

}

ДЛЯ ОБНОВЛЕННОЙ КНОПКИ: -

    DefaultTableModel model=(DefaultTableModel) TB1.getModel();
        while(model.getRowCount()>0){
    model.setRowCount(0);
}

        UPDATEtable();
0 голосов
/ 13 октября 2013

Вы также можете использовать следующий код, если у вас есть экземпляр tableNameList как наблюдаемый:

tableNameList.clear();
tableNameList.addAll(tableQuery.getResultList());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...