Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

javafx Tableview không hiển thị dữ liệu từ cơ sở dữ liệu

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> ?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:Quyền truy cập bị từ chối đối với người dùng vào cơ sở dữ liệu

  2. Thông báo lỗi Cú pháp MySQL Toán hạng phải chứa 1 (các) cột

  3. Đăng Google Biểu mẫu lên cơ sở dữ liệu MySQL?

  4. Hàm MySQL LOG2 () - Trả về Logarit cơ số 2 của một giá trị

  5. Con trỏ MySql - Tạo một thủ tục