V getRoom.rmview
metoda, kterou vyplníte, přiřaďte polím rmview
instance znovu a znovu, ale nikdy neupravíte roomlist
rmview
nikdy se nemění; zůstává prázdný. Protože používáte roomlist
v TableView
, nejsou k dispozici žádná data k zobrazení.
Místo toho byste měli přidat nový prvek pro každý řádek, který databázový dotaz vrátí:
// 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)));
}
Dále doporučuji dodržovat konvence pro pojmenování
. Zejména část o zkratkách, protože kvůli tomu je váš kód pro ostatní obtížně čitelný. Dále object
je špatná volba jako název parametru typu. To vede k nejasnostem a pro parametry typu se obvykle používají jediná velká písmena.
Také účel rmlist
třída je nejasná. Obsahuje stejná pole jako ListRoom
, ale také obsahuje seznam, kam chcete data skutečně uložit. Proč potřebujete tato pole? Potřebujete rmlist
vůbec nebo by to šlo jen nahradit ObservableList<ListRoom>
?