Mailinglisten-Archive |
Wie kriegt man MySQL-Daten am Besten in JTables von Swing angezeigt? Es geht um Tabellen mit 20-50MB, sie müssen nur angezeigt werden, und Daten, die im Fenster zu sehen sind, müssen auch nicht aktualisiert werden. Bisher habe ich an drei verschiedene Wege gedacht. Welcher ist nach Eurer Erfahrung der Beste? Oder gibt es noch was Besseres? 1.) *Direkt* und live aus der Datenbank? Je 1 SQL-Aufruf für jeden der vielleicht mehreren Tausend getValue(row,col)-Aufrufe, die die JTable absetzt, wenn der Benutzer die Scrollbars bewegt? 2.) Nur 1 SQL-Befehl durchführen und die getValue()-Aufrufe aus dessen ResultSet bedienen? 3.) Alles in den Speicher (z.B. in ein Object Array) ziehen und von da aus die JTable füttern. Viele Grüße Martin Rösch ----------------------------- Zu den 3 Wegen: 1) Offene Frage zu dieser Alternative: Wie kann ich in einer SQL-Tabelle auf die n-te Zeile zugreifen? 2) (Vielleicht ein bißchen radikal?) Den ResultSet live als TableModel nehmen. Mit boolean absolute(int n) kommt man auf die n-te Zeile. Offene Frage hier: hält der JDBC-Driver das aus? 3) Java-Objekte als Lieferant: Nach dem SELECT den ResultSet in ein DefaultTableModel umkopieren. Offene Frage hier: Wie macht man das am Besten? Wirklich Zeile für Zeile und Value für Value? Vermutung: Zuerst die Größe des ResultSet feststellen. Hierfür im ResultSet mit last() auf die letzte Zeile positionieren und mit getRow() deren Nummmer holen, die zugleich die Größe des ResultSet ist. Mit dieser Angabe einen Vector anlegen -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive