Recuperer les données d'une Jtable

ndoyestory Messages postés 93 Statut Membre -  
tarek_dotzero Messages postés 834 Statut Membre -
Bonjour,

J'ai un panel dans lequel j'ai inséré un tableau qui comprend 4 colonnes (médicament, dosage, forme, prix) et 2 champs texte quantité et numéro recu.
Maintenant je voudrai recuperer les 4 colonnes du tableau + les 2 champs texte pour les inserer dans une table. mais j'y arrive toujours pas

voici le code de mon DAO et de mon frame médicament :

// DAO
public String insererMedicament(String nomMedoc,String dosageMedoc, String formeMedoc, double prixMedoc, int quantite, int numeroRecu, double prixTotal)
{
String msg="";
try
{ // création et parametrage de la requete d'insertion
pst = con.prepareStatement("insert into medicament (nomMedoc, dosageMedoc, formeMedoc, prixMedoc, quantite, numeroRecu, prixTotal) values (?, ?, ?, ?, ?, ?, ?)");
pst.setString(1, nomMedoc);
pst.setString(2, dosageMedoc);
pst.setString(3, formeMedoc);
pst.setDouble(4, prixMedoc);
pst.setInt(5, quantite);
pst.setInt(6, numeroRecu);
pst.setDouble(7, prixTotal);

// execution de la requete
int i = pst.executeUpdate();
if(i>0)
{
msg="succes";
}else msg="echec";
}catch(SQLException sqe)
{
sqe.printStackTrace();
}
return msg;
}


// frame

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {

for (int i = 0; i < 0; i++) {
String nomMedoc = tb_infosMedoc.getValueAt(i, 1).toString();
String dosageMedoc = tb_infosMedoc.getValueAt(i, 2).toString();
String formeMedoc = tb_infosMedoc.getValueAt(i, 3).toString();
double prixMedoc = Double.parseDouble(tb_infosMedoc.getValueAt(i, 4).toString());
int quantite = Integer.parseInt(txt_qte.getText());
int numeroRecu = Integer.parseInt(txt_numRecu.getText());
double prixTotal = prixMedoc * quantite;
String msg = service.insererMedicament(nomMedoc, dosageMedoc, formeMedoc, prixMedoc, quantite, numeroRecu, prixTotal);
}
JOptionPane.showMessageDialog(null,"Informations enregistrées avec succès");

}

1 réponse

tarek_dotzero Messages postés 834 Statut Membre 122
 
Bonjour,

En Java, les JTable ne contiennent pas vraiment les données, ils sont associées à d'autres objets qui sont les TableModel et là il y a deux possibilités :

1. Utiliser DefaultTableModel qui implémente toutes les méthodes de l'interface TableModel

2. Utiliser AbstractTableModel et vous aurez plus de libérté avec l'implémentation que vous voulez réaliser.

Un tuto rapide (qui utilise AbstractTableModel):

https://thierry-leriche-dessirier.developpez.com/tutoriels/java/afficher-tableau-avec-tablemodel-5-min/

Bon Courage.
0