Я пытаюсь заполнить GUI-конструктор Netbeans jTable, используя данные базы данных Derby.Заполнение jTable с использованием данных базы данных
Я использую следующий код, в моем классе Account.java:
public DefaultTableModel getData() {
try {
String stmt = "SELECT * FROM APP.DATAVAULT";
PreparedStatement ps = Main.getPreparedStatement(stmt);
ResultSet rs = ps.executeQuery();
ResultSetMetaData md = rs.getMetaData();
int columnCount = md.getColumnCount();
Vector columns = new Vector(columnCount);
//store column names
for (int i = 1; i <= columnCount; i++) {
columns.add(md.getColumnName(i));
}
Vector data = new Vector();
Vector row;
while (rs.next()) {
row = new Vector(columnCount);
for (int i = 1; i <= columnCount; i++) {
row.add(rs.getString(i));
}
data.add(row);
//Debugging
}
// List.setModel(tableModel);
ps.close();
rs.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
DefaultTableModel tableModel = new DefaultTableModel(data, columns);
return tableModel;
}
В идеале, я хочу, чтобы иметь возможность вернуть TableModel с данными и столбцами параметров внутри, как я понимаю делаю этот метод в моем графическом интерфейсе есть плохая практика. Все обучающие программы в Интернете не показывают, как отправлять данные в другой класс, они просто выполняют код базы данных в классах GUI.
У меня ошибка, когда он не может видеть данные и столбцы, потому что они объявлены и использованы в недостижимой части моего метода. После того, как я это сделал, мне нужно найти способ передать это в мой GUI-класс и установить модель для моего jTable, созданную разработчиком GUI NetBeans.
Я искал этот сайт для ответов, и я пробовал много решений. Тем не менее, я никогда, кажется, не получаю ничего, чтобы работать из-за того, как я закодировал свою систему. Я также пробовал другие сайты, такие как:
http://tips4java.wordpress.com/2009/03/12/table-from-database/
http://chang.advits.com/populate-data-from-database-into-jtable-in-netbeans < это было бы идеально, но это не сработало. Я последовал за ним в тройник!
и смотрел на Javadocs для JTable, DefaultTableModel и ResultSetTableModel - я ни в коем случае не не пробовали делать это сам, учась и т.д ...
Как я могу идти об этом с тем, как я смоделировал моя система? Кроме того, во всяком случае, чтобы исправить мой метод, или я должен отказаться от него вообще?
Большое спасибо за помощь. Ваша другая информация о конце в блоке try-catch чрезвычайно полезна! Через несколько часов я перейду через ваш код и реализую его, когда я пойду и вернусь к вам. Еще раз спасибо. –
ОК, я не использовал код как таковой, но его биты, наконец, запустили. Я не уверен, если я буду отмечать его так же корректно, как моя программа все еще не работает, но это помогло мне. Этого достаточно, чтобы отметить это как правильно? –
И что не работает? – MadProgrammer