Mysql
 sql >> база данни >  >> RDS >> Mysql

javafx Tableview не показва данни от база данни

В getRoom.rmview метод, който попълвате, задайте полетата на rmview екземпляр отново и отново, но никога не променяте roomlist на rmview никога не се променя; остава празен. Тъй като използвате roomlist в TableView , няма данни за показване.

Вместо това трябва да добавите нов елемент за всеки ред, върнат от заявката към базата данни:

// remove data previously in the list
rmList.roomlist.clear();

while (rs.next()){
    rmList.roomlist.add(new ListRoom(rs.getString(1),
                                     rs.getString(2),
                                     rs.getString(3),
                                     rs.getString(4),
                                     rs.getString(5)));
}

Освен това препоръчвам да се придържате към конвенциите за именуване . Особено частта за съкращенията, тъй като това прави вашия код труден за четене от другите. Освен това object е лош избор като име за параметър тип. Това води до объркване и обикновено се използват единични главни букви за параметри на типа.

Също така целта на rmlist класът е неясен. Съдържа същите полета като ListRoom , но също така съдържа списък, където искате действително да се съхраняват данните. Защо ви трябват тези полета? Имате ли нужда от rmlist изобщо или може просто да се замени с ObservableList<ListRoom> ?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да видя колко MySQL връзки са отворени?

  2. Картографиране на доктрина 2, препращащо към уникален ключ

  3. Път за обучение на MySQL

  4. Boolean срещу tinyint(1) за булеви стойности в MySQL

  5. mysql подреждане на заявката за присъединяване по две колони