Bonjour,

J'aimerais bien lire des données et les mettre dans une application Java

Voici une classe parmi celles que j'ai faites :
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
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
import java.awt.BorderLayout;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
 
import javax.swing.JFrame;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPopupMenu;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
 
public class Dep extends JFrame {
 
    private JTable tableau;
    private String supp = "Supprimer la ligne";
 
    public Dep() {
 
        this.setLocationRelativeTo(null);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setTitle("Liste des départements");
        this.setSize(400, 90);
        this.createContent();
    }
 
    private void createContent() {
 
        Object[][] data = { { "Comptabilité", "HP LaserJet 1300" }, { "DAF", "HP LaserJet 1018 Printer" } };
        String title[] = { "Département", "Imprimante" };
        this.tableau = new JTable(new DefaultTableModel(data, title));
        this.tableau.getTableHeader().addMouseListener(new MouseAdapter() {
 
            @Override
            public void mouseReleased(MouseEvent event) {
 
                if (event.getButton() == MouseEvent.BUTTON3) {
                    if (tableau.columnAtPoint(new Point(event.getX(), event.getY())) != -1) {
                        JMenuItem ajouter = new JMenuItem("Ajouter une colonne");
                        ajouter.addActionListener(new AddListener());
                        JMenuItem erase = new JMenuItem("Effacer cette colonne");
                        erase.addActionListener(new EraseListener(new Point(event.getX(), event.getY())));
                        JPopupMenu menu = new JPopupMenu();
                        menu.add(ajouter);
                        menu.add(erase);
                        menu.show(tableau, event.getX(), event.getY());
                    }
                }
            }
        });
        this.getContentPane().add(new JScrollPane(tableau), BorderLayout.CENTER);
    }
 
    class EraseListener implements ActionListener {
 
        private Point      point = null;
        private Object[][] data;
        private Object[]   title;
 
        public EraseListener(Point col) {
 
            this.point = col;
        }
 
        @Override
        public void actionPerformed(ActionEvent event) {
 
            int col = tableau.columnAtPoint(this.point);
            TableColumn column = tableau.getColumn(tableau.getColumnName(col));
            initNewData(column);
            ((DefaultTableModel) tableau.getModel()).setDataVector(this.data, this.title);
        }
 
        private void initNewData(TableColumn column) {
 
            this.data = new Object[tableau.getRowCount()][tableau.getColumnCount() - 1];
            this.title = new Object[tableau.getColumnCount() - 1];
            for (int i = 0; i < tableau.getRowCount(); i++) {
                for (int j = 0, k = 0; j < tableau.getColumnCount(); j++) {
                    if (!((DefaultTableModel) tableau.getModel()).getColumnName(j).equals(column.getHeaderValue())) {
                        if (i == 0)
                            this.title[k] = ((DefaultTableModel) tableau.getModel()).getColumnName(j);
                        this.data[i][k] = tableau.getValueAt(i, j);
                        k++;
                    }
                }
            }
        }
    }
 
    class AddListener implements ActionListener {
 
        @Override
        public void actionPerformed(ActionEvent event) {
 
            JOptionPane jop = new JOptionPane(), jop2 = new JOptionPane();
            String nom = JOptionPane.showInputDialog(null, "Saisissez le nom de la nouvelle colonne", "Ajout d'une colonne",
                    JOptionPane.QUESTION_MESSAGE);
            if (nom != null) {
                if (!nom.trim().equals("")) {
                    ((DefaultTableModel) tableau.getModel()).addColumn(nom);
                }
            }
        }
    }
}
Je souhaiterais modifier "data" avec des données de la base de données.

J'utilise PostgreSQL.

Quelqu'un saurait-il m'expliquer comment faire ?

Merci d'avance pour votre aide.