2013-09-10 2 views
0

Hy! Я работаю над java-приложением, которое имеет 2 формы. В первой форме мой пользовательский порядок питания, и я храню его заказ в моей базе данных на сервере localhost. На второй форме, которая заказывает в JTable, используя простой sql-запрос. Теперь я хочу, чтобы мой JTable обновлялся каждые 2 секунды, поэтому я могу автоматически видеть, когда пользователь заказывает еду. Я попытался с таймерами, но я полный новичок в программировании на Java, так что я был бы признателен за помощь ... Вот мой метод, который обновляет таблицу, но мне просто нужно немного справки о Таймер:Java JTable для обновления каждые 2 секунды

private void NapraviTablicu() { 
    dohvatiNarudzbe(); //method for executing sql queries and filling my list KuhinjaListaJela with new ordered meals 
    TableModel tableModel = new KitchenTableModel(KuhinjaListaJela);//Making new table model from list 
    Tablica.setModel(tableModel);// displaying new meals in table 
} 
+3

Подумайте о том, чтобы показать нам свой код таймера и объяснить, как он не работает. –

ответ

1

javax.swing.Timer является немного неудобно для этого; как есть java.util.Timer. Пока вы обновляете TableModel на event dispatch thread, вы можете запросить базу данных в другом потоке каждые две секунды, используя любой из приведенных ниже подходов. Обратите внимание, что нормально спать на фоновом потоке.

  • SwingWorker, видели here и here.

  • Runnable, замеченный here.

Смежные вопросы