Christian Lisangola Ответов: 0

Как заполнить tableview из базы данных mysql?


Я пытаюсь заполнить TableView пользовательскими данными из базы данных mysql, но возвращается только последняя информация о записи моей пользовательской таблицы.

Что я уже пробовал:

Connection peace of code

public class LoadUsers
{
    ObservableList<ModelUser> personData= FXCollections.observableArrayList();
    Connection con;
    Statement soum;
    ResultSet sortie;
    String rq;

    public LoadUsers() {
        try {
            rq = "select * from user";
            con = DriverManager.getConnection(AppelDriver.getConnexionString(), AppelDriver.getUSERNAME(), AppelDriver.getPASSWORD());
            try {
                soum = con.createStatement();
                sortie = soum.executeQuery(rq);
                while (sortie.next()) {
                    String nom = sortie.getString("nom_user");
                    String prenom = sortie.getString("postnom_user");
                    String postnom = sortie.getString("prenom_user");
                    String matricule = sortie.getString("matri_user");
                    String groupe = sortie.getString("id_group");
                    personData.add(new ModelUser(nom, prenom, postnom, matricule, groupe));
                }
            } catch (Exception ex) {
                JOptionPane.showMessageDialog(null, "Mauveaus de la requete");
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "Base des donnees introuvable");
        }
    }
        public ObservableList<ModelUser> getUserData()
        {
           return personData;
        }

main program peace of code

TableColumn<ModelUser, String> fNameColumn = new TableColumn<>("Nom");
        fNameColumn.setMinWidth(150);
        fNameColumn.setCellValueFactory(new PropertyValueFactory<>("nomUser"));

        TableColumn<ModelUser, String> mNameColumn = new TableColumn<>("Postnom");
        mNameColumn.setMinWidth(150);
        mNameColumn.setCellValueFactory(new PropertyValueFactory<>("postnomUser"));

        TableColumn<ModelUser, String> lNameColumn = new TableColumn<>("Prenom");
        lNameColumn.setMinWidth(150);
        lNameColumn.setCellValueFactory(new PropertyValueFactory<>("prenomUser"));

        TableColumn<ModelUser, String> gNameColumn = new TableColumn<>("Groupe");
        gNameColumn.setMinWidth(150);
        gNameColumn.setCellValueFactory(new PropertyValueFactory<>("idGroup"));

        TableColumn<ModelUser, String> matNameColumn = new TableColumn<>("Matricule");
        matNameColumn.setMinWidth(150);
        matNameColumn.setCellValueFactory(new PropertyValueFactory<>("matri_user"));

        user = new TableView<>();
        userApp=new LoadUsers();
        user.setItems(userApp.getUserData());
        //table.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
        user.getColumns().addAll(fNameColumn,mNameColumn,lNameColumn,gNameColumn);

0 Ответов