Ich habe in der Klasse View eine Tabelle:
Sie soll mit Informationen aus einer DB gefüttert werden (der DB-Zugriff funktioniert).
Das Problem ist jetzt, dass in der DB leider nur der 1. Eintrag landet und nicht alle vorhandenen (in der DB sind 10 Einträge).
Ich denke, ich muss das irgendwie mit mehrdimensionalen Array machen, allerdings krieg ich das nicht hin.
Weiß jemand, wo der Fehler liegt?
Java:
public class View extends JPanel implements ActionListener {
String[] title = new String[]{
"#", "Spieler", "Siege", "Niederlagen", "Highscore"
};
DefaultTableModel model = new DefaultTableModel(data, title);
JTable table = new JTable(model);
JScrollPane scroll = new JScrollPane(table);
JButton bAktual = new JButton("Aktualisieren");
DB db;
public Statistik(DB db) {
this.db = db;
this.setLayout(new BorderLayout());
table.setEnabled(false);
this.add(scroll, BorderLayout.CENTER);
this.add(bAktual, BorderLayout.SOUTH);
bAktual.addActionListener(this);
System.out.println("DB" + db);
}
public void actionPerformed(ActionEvent ae) {
model.addRow(db.statistikAusgeben());
}
}
Sie soll mit Informationen aus einer DB gefüttert werden (der DB-Zugriff funktioniert).
Java:
public Vector statistikAusgeben() {
Vector results = new Vector();
try {
stmt = conn.createStatement();
rs = stmt.executeQuery("SELECT * FROM SPIELER");
while (rs.next()) {
results.add(rs.getInt("id"));
results.add(rs.getString("username"));
results.add(rs.getInt("siege"));
results.add(rs.getInt("niederlagen"));
results.add(rs.getInt("highscore"));
results.add(person);
}
rs.close();
stmt.close();
} catch (SQLException ex) {
System.out.println("fehler beim statistik ausgeben");
}
return results;
}
Das Problem ist jetzt, dass in der DB leider nur der 1. Eintrag landet und nicht alle vorhandenen (in der DB sind 10 Einträge).
Ich denke, ich muss das irgendwie mit mehrdimensionalen Array machen, allerdings krieg ich das nicht hin.
Weiß jemand, wo der Fehler liegt?