bonjour
j'ai une base de donnée MYSQL contient 3 tables client, produit et preference (idclient,idproduit). je veux présenter le contenu de la colonne idclient et idproduit sous forme d'un graphe dont
un point est de coordonné (idclient,idproduit). j'ai implémenté le code suivant mais il m'affiche juste un seul point. j'utilise un JFrame pour exécuter ce code.
pouvez vous m'aider. et merci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
package systeme;
 
import com.util.Connecter;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JPanel;
 
/**
 *
 * @author Performance_Info
 */
public class graphique extends JPanel{
 
    @Override
    protected void paintComponent(Graphics g) {
        try {
            Graphics2D gr=(Graphics2D)g;
            gr.setColor(Color.white);
            gr.fillRect(0, 0, getWidth(), getHeight());
            Connection cnx=Connecter.connecter();
            PreparedStatement st=cnx.prepareStatement("select idclient,idproduit from preference ");           
            ResultSet re=st.executeQuery();
            ResultSetMetaData data=re.getMetaData();
           while(re.next())
           { for(int i=1;i<=data.getColumnCount();i++)      
                 {   for(int j=i;i<=data.getColumnCount();i++) 
                      {gr.setColor(Color.red);
                       gr.fillOval(re.getInt(i),re.getInt(j), 10, 10);
                      }
                 }
           }
 
        } catch (SQLException ex) {
            Logger.getLogger(graphique.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
 
 
}