sql >> Base de Datos >  >> RDS >> Mysql

javafx Tableview no muestra datos de la base de datos

En la vista getRoom.rmview método que llene asigne los campos de rmview instancia una y otra vez, pero nunca modifica la roomlist de rmview nunca se modifica; permanece vacío. Ya que usas roomlist en el TableView , no hay datos para mostrar.

En su lugar, debe agregar un nuevo elemento para cada fila que devuelve la consulta de la base de datos:

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

Además, recomiendo adherirse a las convenciones de nomenclatura . Especialmente la parte de las abreviaturas ya que esto hace que tu código sea difícil de leer para otros. Además object es una mala elección como nombre para un parámetro de tipo. Genera confusión y, por lo general, se utilizan letras mayúsculas individuales para los parámetros de tipo.

También el propósito de rmlist la clase no está clara. Contiene los mismos campos que ListRoom , pero también contiene una lista donde desea que se almacenen realmente los datos. ¿Por qué necesitas esos campos? ¿Necesita rmlist en absoluto o podría simplemente ser reemplazado con ObservableList<ListRoom> ?