Vector og JTable
Jeg skal indsætte in tabel i en JTable.Det går jeg ved at hente tabellen over i et ResultSet.
Ligge mit ResultSet over i en vektor.
liger vektoren over i en tableModel og,
Ligger tableModel'en over i en JTable.
Problemmet er at den sætter den først line ind.
I alle rækkerne
Min kode ser ud som følgende:
public void doQuery(String sqlUdtryk) {
ResultSet rs = null;
Vector data = new Vector();
try {
Connection conn = DriverManager.getConnection("jdbc:odbc:FFS","","");
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sqlUdtryk);
ResultSetMetaData rsmd = rs.getMetaData();
DefaultTableModel dtm= new DefaultTableModel();
int i=1;
while (i<=rsmd.getColumnCount()) {
String x = rsmd.getColumnLabel(i);
dtm.addColumn(x);
i++;
}
int numberOfColumns = rsmd.getColumnCount();
int raekke=0;
while (rs.next()) {
if (numberOfColumns > 1) {
for (int k= 1; k <= numberOfColumns; k++) {
//row[k]=s.getString(k);
data.addElement(rs.getString(k));
}
} else {
data.addElement(rs.getString(1));
}
System.out.println(data);
dtm.addRow(data);
raekke++;
}
jTextField1.setText(String.valueOf(raekke));
jTable1.setModel(dtm);
System.out.println("data færdig");
}
catch (SQLException e) {
e.printStackTrace();
}
//return data;
}
Og her er udskriften af vektoren.[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00]
[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00, 12, Efterårsferie, 2002-10-13 00:00:00, 2002-10-20 00:00:00]
[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00, 13, Juleferie, 2002-12-20 00:00:00, 2003-01-05 00:00:00]
[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00, 14, Vinterferie, 2003-02-08 00:00:00, 2003-02-16 00:00:00]
[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00, 15, Påskeferie, 2003-04-12 00:00:00, 2003-04-21 00:00:00]
[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00, 16, St. bededag, 2003-05-16 00:00:00, 2003-05-19 00:00:00]
[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00, 17, xxx, 2003-05-01 00:00:00, 2003-05-01 00:00:00]
[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00, 18, Kr. Himmelfart, 2003-05-29 00:00:00, 2003-06-01 00:00:00]
[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00, 19, Pinseferie, 2003-06-07 00:00:00, 2003-06-09 00:00:00]
[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00, 20, Grundlovsdag, 2003-06-05 00:00:00, 2003-06-05 00:00:00]
[11, Sommerferie, 2002-06-16 00:00:00, 2002-08-15 00:00:00, 21, Sommerferie, 2003-06-16 00:00:00, 2003-08-14 00:00:00]
data færdig
Hvad er problemet
