Trong getRoom.rmview phương pháp bạn điền chỉ định các trường của rmview ví dụ lặp đi lặp lại, nhưng bạn không bao giờ sửa đổi roomlist trong tổng số rmview không bao giờ được sửa đổi; nó vẫn trống rỗng. Vì bạn sử dụng roomlist trong TableView , không có dữ liệu nào để hiển thị.
Thay vào đó, bạn nên thêm một phần tử mới cho mỗi hàng mà truy vấn cơ sở dữ liệu trả về:
// 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)));
}
Hơn nữa, tôi khuyên bạn nên tuân thủ quy ước đặt tên
. Đặc biệt là phần về sự cắt bỏ vì điều này làm cho mã của bạn khó đọc đối với người khác. Hơn nữa, đối tượng object là một lựa chọn không tốt làm tên cho một tham số kiểu. Nó dẫn đến sự nhầm lẫn và thường các chữ cái hoa đơn được sử dụng cho các tham số kiểu.
Cũng là mục đích của rmlist giai cấp không rõ ràng. Nó chứa các trường giống như ListRoom , mà còn chứa một danh sách mà bạn muốn dữ liệu thực sự được lưu trữ. Tại sao bạn cần những lĩnh vực đó? Bạn có cần rmlist hoàn toàn hoặc có thể nó chỉ được thay thế bằng ObservableList<ListRoom> ?