Hier verwende ich Datenbankverbindung und versuche, alle Tabellennamen aus der Datenbank abzurufen. Später, als Sie diese Tabellennamen sehen kann ich (mit while-Schleife) gespeichert bekommen in String [] Tabellen, und fügen Sie dann ich diese Zeichenfolge zu meinemJava: Wie setze ich Array in JScrollPane();?
List<String []> sqltable = new ArrayList<>();
Um sie zu drucken i for-Schleife bin mit:
for (String [] tablename : sqltable)
Also meine Frage wäre, wie kann ich diese for-Schleife (oder vielleicht nicht für die Schleife, wenn jemand bessere Methode weiß), um diese sqltable-Liste in meine listScrollPane?
JScrollPane listScrollPane = new JScrollPane();
Ich habe bereits versucht (aber das funktioniert nicht, weil ich nicht varibales bilden Schleife meine während erreichen können):
JScrollPane listScrollPane = new JScrollPane(Arrays.asList(sqltable));
versuchte auch Verfahren zum Erzeugen und Speichern von für Schleife drin, aber durch dieses i erreicht tun nur null.
Mein Codestück:
if (conn != null) {
DatabaseMetaData metadata = conn.getMetaData();
List<String []> sqltable = new ArrayList<>();
try {
String[] types = {"TABLE"};
String[] tables;
ResultSet resultSet = metadata.getTables(null, null, "%", types);
while (resultSet.next()) {
tableName = resultSet.getString(3);
tables = new String[]{tableName};
sqltable.add(tables);
}
} catch (SQLException ex) {
Logger.getLogger(JFDatabase.class.getName()).log(Level.SEVERE, null, ex);
}
for (String [] tablename : sqltable){
System.out.println(Arrays.toString(tablename));
System.out.println(Arrays.asList(tablename));
}
}
JScrollPane gibt Ihnen nur einen Bereich, der gescrollt werden kann. Sie müssen einige Inhalte hinzufügen, um Ihre Liste einzufügen. Zum Beispiel eine Tabelle oder ListBox etc .... BTW Warum verwenden Sie String-Arrays innerhalb einer ArrayList? – jr593
Ok ich kann ArrayList <> a = new ArrayList <> verwenden, aber das ist nicht das Problem, in beiden Fällen funktioniert das, und für JScrollPane weiß ich, dass ich einige Daten eingeben muss, aber ich frage nicht danach Ich frage nach dem richtigen Weg, das zu tun. –