sql >> Database >  >> RDS >> Mysql

javafx Tabelweergave toont geen gegevens uit database

In de getRoom.rmview methode die u invult wijs de velden van de rmview . toe instantie keer op keer, maar u wijzigt nooit de roomlist van rmview wordt nooit gewijzigd; het blijft leeg. Omdat je roomlist gebruikt in de TableView , er zijn geen gegevens om weer te geven.

U moet in plaats daarvan een nieuw element toevoegen voor elke rij die de databasequery retourneert:

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

Verder raad ik aan om je te houden aan de naamgevingsconventies . Vooral het gedeelte over afkortingen, omdat dit je code moeilijk leesbaar maakt voor anderen. Verder object is een slechte keuze als naam voor een typeparameter. Het leidt tot verwarring en meestal worden enkele hoofdletters gebruikt voor typeparameters.

Ook het doel van de rmlist klasse is onduidelijk. Het bevat dezelfde velden als ListRoom , maar bevat ook een lijst waar u de gegevens daadwerkelijk wilt opslaan. Waarom heb je die velden nodig? Heeft u rmlist nodig? helemaal niet of kan het gewoon worden vervangen door ObservableList<ListRoom> ?




  1. 1064-fout met CodeIgniter in ci_sessions-tabel

  2. DAY() Voorbeelden in SQL Server (T-SQL)

  3. Zelfverwijzende externe sleutel in sequlize js

  4. MYSQLI voorbereide instructie bind_param types werkt niet