Ich versuche, Werte aus der SQLite - Datenbank einzulesen, und ich habe die folgende Frage: Welche Datenstruktur würden Sie verwenden, wenn die API nur Zeilen für Zeile ohne die Möglichkeit zu überprüfen, wie viele Zeilen es gibt? Ich möchte betonen, dass ich am Ende ein zweidimensionales Array zurückgeben möchte ... Würdest du eine Liste von Listen erstellen und dann konvertieren?Java: Lesen von Werten aus der Datenbank unbekannter Größe
Antwort
Ich denke, es ist besser Liste der Objekt zurückkehren Sie seine Daten versuchen zu bekommen, wenn Sie zum Beispiel alle Schüler bilden Datenbank erhalten möchten, können Sie Klasse für das machen könnte:
public final class Student {
private int id;
private String name;
private int age;
public Student(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public int getId() {
return this.id;
}
// other getter methods
}
dann können Sie abrufen in allen Studentenliste
public List<Student> getAllStudents() throws SQLException {
List<Student> students = new ArrayList<Student>();
String select = "SELECT * FROM students";
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(select);
while (resultSet.next()) {
int id = resultSet.getInt(1);
String name = resultSet.getString(2);
int age = resultSet.getInt(3);
Student student = new Student(id, name, age);
students.add(student);
}
return students;
}
bearbeiten: die Größe der Ergebnismenge zu erhalten, können Sie resultset.last(), dann rufen resultset.getRow() aufrufen, es wurde hier diskutiert:
How do I get the size of a java.sql.ResultSet?
How to get a number of rows a ResultSet contains?
ResultSet resultSet = ps.executeQuery();
int rowcount = 0;
if (resultSet.last()) {
rowcount = resultSet.getRow();
resultSet.beforeFirst();
}
dann können Sie Ihre 2D-Array bauen:
String[][] result = new String[rowCount][ColumnCount];
int i=0;
while (resultSet.next()) {
// build result[i] array
i++;
}
Ich brauche keine Objekte, ich brauche 2D-Arrays – Bober02
siehe die aktualisierte Antwort –
- 1. SWIG/Java erhalten Puffer von unbekannter Größe von C++
- 2. Lesen von Werten aus einer Datei in Java
- 3. Array unbekannter Größe basiert auf der Eingabedatei
- 4. JS: ArrayBuffer von unbekannter Größe
- 5. Einstellen von Javascript-Werten aus Werten in mySQL-Datenbank
- 6. Lesen von Werten aus der Eigenschaftendatei über NANT
- 7. C-Funktion zum Lesen von 2 Werten aus der Datei
- 8. Kombinieren von JavaScript mit Werten aus der Datenbank Tabelle
- 9. Protobuf Pars von Char * mit unbekannter Größe
- 10. Java-Bibliothek zum Lesen von Datenbank-Schema
- 11. Akka Schauspieler lesen Zustand aus der Datenbank
- 12. Lesen Sie .NET-Konfiguration aus der Datenbank
- 13. Abrufen von Byte-Array unbekannter Länge aus Java-Speicher
- 14. Abrufen von Daten aus Firebase Datenbank: Unbekannter Selektor gesendet Instanz
- 15. Wie man Enum aus den Werten aus der Datenbank
- 16. MongoDB Extrahieren von Werten aus BasicDBObject (Java)
- 17. Java NIO: Blöcke variabler Größe lesen
- 18. Problem beim Lesen von Nchar-Daten aus der Oracle-Datenbank
- 19. Lesen von Daten aus der SQL-Datenbank in generische Sammlung
- 20. Lesen von Daten aus der Datenbank in Linq-to-SQL
- 21. Lesebereich von Werten in einem Array mit unbekannter Dimension
- 22. Speichern von Werten in der Datenbank
- 23. java - lotto aus der Textdatei lesen
- 24. Daten aus einer Datenbank lesen?
- 25. Kein Millisekundenwert beim Lesen von DateTime-Werten aus einer SQL-Datenbank in C#
- 26. Ein Array unbekannter Größe mit Elementen mit variablen Zahlen von Werten/Eigenschaften
- 27. Füllen Sie eine Enum mit Werten aus der Datenbank
- 28. JSON Sortierung mit Werten aus der Datenbank in Rails
- 29. Codierte ui - Lesen/Schreiben von Werten aus CSV-Dateien
- 30. Lesen von InputStream aus dem Java-Prozess
Hilfreiche Seite - http://stackoverflow.com/questions/778173/streaming-data-through -spring-jdbc-unbekannte Länge – Coffee