ここで私はdatabse接続を使用しており、データベースからすべてのテーブル名を取得しようとしています。あなたが見ることができるように後、私は(whileループを使用)を取得、それらのテーブル名は、String []型のテーブルに格納され、その後、私はそれらを印刷するためには、私のJava:配列をJScrollPane()に配置するにはどうすればいいですか?
List<String []> sqltable = new ArrayList<>();
にこの文字列を追加し、私は、forループを使用しています:
をfor (String [] tablename : sqltable)
だから私の質問は、(誰かがより良い方法を知っていれば、forループまたはそうでないかもしれない)私は私のlistScrollPaneに、このリストのSQLTableを置くためにループのためにこれを使用することができますどのようにでしょうか?
JScrollPane listScrollPane = new JScrollPane();
(私はvaribalesは私のwhileループを形成達することができないので、これは動作していない)私はすでに試した:
JScrollPane listScrollPane = new JScrollPane(Arrays.asList(sqltable));
はまた、それにループするための方法およびストアを作成しようとしたが、これを行うことによって、私は達成nullのみ。
マイコードsnipetは:
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はスクロール可能なペインを提供します。リストを入れるには、その中にいくつかのコンテンツを追加する必要があります。 たとえば、テーブルやリストボックスなど。 なぜあなたはArrayListの中で文字列配列を使用していますか? – jr593
私はArrayList <> a = new ArrayList <>を使用することができますが、これは問題ではありません。どちらの場合でもこれは動作していますし、JScrollPaneのためにいくつかデータを入れる必要があることを知っていますが、私はそれを行うための適切な方法を求めています。 –