1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
| public void voir_list_client_JTable(){
ArrayList<Client> mesCli = new ArrayList<Client>();
Connection connect =DataBaseAccess.open(); // conexion a ma base de donnée
DataBaseAccess D =new DataBaseAccess(); // la classe de conexion
try {
Statement state = connect.createStatement(); //On crée un statement
D.resultSet = D.state.executeQuery("SELECT * FROM Client"); //On exécute la requête
ResultSetMetaData meta = D.resultSet.getMetaData(); //On récupère les meta afin de récupérer le nom des colonnes
//On initialise un tableau d'Object pour les en-têtes du tableau
Object[] column = new Object[meta.getColumnCount()];
for(int i = 1 ; i <= meta.getColumnCount(); i++)
column[i-1] = meta.getColumnName(i); // les colonnes
//Petite manipulation pour obtenir le nombre de lignes
D.resultSet.last();
int rowCount = D.resultSet.getRow();
Object[][] data = new Object[D.resultSet.getRow()][meta.getColumnCount()];
//On revient au départ
D.resultSet.beforeFirst();
int j = 1;
//On remplit le tableau d'Object[][]
while(D.resultSet.next()){
for(int i = 1 ; i <= meta.getColumnCount(); i++)
data[j-1][i-1] = D.resultSet.getObject(i); // les données
j++;
}
//On ferme le tout
D.resultSet.close();
state.close();
resultPanel2.removeAll(); //On enlève le contenu de notre conteneur
JTable jtb=new JTable(data, column);
resultPanel2.add(new JScrollPane(new JTable(data, column)), BorderLayout.CENTER); //On y ajoute un JTable
boutonsPanel2.add(resultPanel2_ajouter);
boutonsPanel2.add(resultPanel2_modifier);
boutonsPanel2.add(resultPanel2_supprimer);
resultPanel2.add(boutonsPanel2, BorderLayout.SOUTH);
resultPanel2.revalidate(); //On force la mise à jour de l'affichage
centerPane2.removeAll();
centerPane2.add(resultPanel2, BorderLayout.CENTER);
this.add(centerPane2, BorderLayout.CENTER);
this.validate();
this.repaint();
} catch (SQLException e) {
resultPanel2.removeAll(); //Dans le cas d'une exception, on affiche une pop-up et on efface le contenu
resultPanel2.add(new JScrollPane(new JTable()), BorderLayout.CENTER);
resultPanel2.revalidate();
centerPane2.removeAll();
centerPane2.add(resultPanel2, BorderLayout.CENTER);
this.add(centerPane2, BorderLayout.CENTER);
this.validate();
this.repaint();
JOptionPane.showMessageDialog(null, e.getMessage(), "ERREUR ! ",JOptionPane.ERROR_MESSAGE);
}
} |
Partager