sql >> Database teknologi >  >> RDS >> Mysql

javafx Tabelvisning viser ikke data fra databasen

I getRoom.rmview metode, du udfylder, tildeler felterne i rmview instans igen og igen, men du ændrer aldrig roomlist af rmview er aldrig ændret; den forbliver tom. Da du bruger roomlist i TableView , der er ingen data at vise.

Du bør i stedet tilføje et nyt element for hver række, databaseforespørgslen returnerer:

// 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)));
}

Desuden anbefaler jeg, at du overholder navnekonventionerne . Især delen om forkortelser, da dette gør din kode svær at læse for andre. Desuden object er et dårligt valg som navn for en type parameter. Det fører til forvirring, og som regel bruges enkelte store bogstaver til typeparametre.

Også formålet med rmlist klasse er uklar. Den indeholder de samme felter som ListRoom , men indeholder også en liste, hvor du ønsker, at data rent faktisk skal gemmes. Hvorfor har du brug for de felter? Har du brug for rmlist overhovedet eller kunne det bare erstattes med ObservableList<ListRoom> ?




  1. Hvordan kan jeg bruge mySQL replace() til at erstatte strenge i flere poster?

  2. Hvordan skal jeg ændre min sql for at få det, jeg vil have i dette tilfælde?

  3. Sådan opretter du dynamiske pivottabeller i MySQL

  4. Indsæt i postgres SQL