В 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>
?