afficher requet sql dans tableau en java
salut tous le monde
j ai un petit probleme concernat l affichage du resultat d une requet sql dans un jtable;
J'ai réalisé un code mais ca marche pas il m afiche rien qu un probleme au niveau de l (action event e) :o et je comprend pas pourquoi:
[le code]
import java.awt.BorderLayout;
import java.awt.event.ActionListener;
import java.sql.*;
import java.util.logging.*;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
public class tabl extends JFrame implements ActionListener{
String [] colonnes={"Numéro", "Titre","Auteur","Auteur"};
Object [][]data;
DefaultTableModel tablemodel = new DefaultTableModel(data, colonnes);
JTable table = new JTable(tablemodel);
public tabl() throws SQLException
{
setSize(300,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
JMenuBar jmbar = new JMenuBar();
setJMenuBar(jmbar);
JMenu jmfile = new JMenu("File");
jmbar.add(jmfile);
JMenuItem itemajout = new JMenuItem("Ajout livre");
jmfile.add(itemajout);
itemajout.addActionListener(this);
JMenuItem itemsuprim = new JMenuItem("Suprimer livre");
jmfile.add(itemsuprim);
itemsuprim.addActionListener(this);
try
{ Class.forName("com.mysql.jdbc.Driver");
String url ="jdbc:mysql://localhost/java";
String user ="root";
String pass="holow";
Connection cnx = (Connection) DriverManager.getConnection(url, user, pass);
Statement tm= (Statement) cnx.createStatement();
ResultSet rs = tm.executeQuery("SELECT id_client,nom,tel,prenom FROM client");
while(rs.next())
{
int num=rs.getInt("id_client" );
String nom=rs.getString("nom" );
int tel=rs.getInt("tel" );
String prenom=rs.getString("prenom" );
}
}
catch (ClassNotFoundException e)
{
System.out.println("erreur : ClassNotFoundException");
}
tablemodel.addRow(new Object[]{" + num + "," +nom+ "," + tel + "," + prenom + "});
add(new JScrollPane(table),BorderLayout.CENTER);
}
// c est au nivaux de cette ligne quille souligne action event e
public void actionPerformed( ActionEvent e)
{
if(e.getActionCommand().equals("Ajout livre"))
{ajout c =new ajout();
c.show();
this.dispose();
}
if(e.getActionCommand().equals("Suprimer livre"))
{
int i=table.getSelectedRow();
tablemodel.removeRow(i);
}
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
try {
new tabl().setVisible(true);
} catch (SQLException ex) {
Logger.getLogger(tabl.class.getName()).log(Level.SEVERE, null, ex);
}
}
});
}
}
ci quelqu un peut me dire c est qu oi ce probleme ou coment le resoudre autrement