Dans getRoom.rmview
méthode que vous remplissez assignez les champs du rmview
instance encore et encore, mais vous ne modifiez jamais la roomlist
de rmview
n'est jamais modifié ; il reste vide. Depuis que vous utilisez roomlist
dans le TableView
, il n'y a aucune donnée à afficher.
Vous devriez plutôt ajouter un nouvel élément pour chaque ligne renvoyée par la requête de base de données :
// 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)));
}
De plus, je recommande de respecter les conventions de dénomination
. Surtout la partie sur les abréviations car cela rend votre code difficile à lire pour les autres. De plus object
est un mauvais choix comme nom pour un paramètre de type. Cela prête à confusion et généralement des lettres majuscules simples sont utilisées pour les paramètres de type.
Aussi le but de la rmlist
la classe n'est pas claire. Il contient les mêmes champs que ListRoom
, mais contient également une liste où vous souhaitez que les données soient réellement stockées. Pourquoi avez-vous besoin de ces champs ? Avez-vous besoin de rmlist
du tout ou pourrait-il simplement être remplacé par ObservableList<ListRoom>
?