Заполнение нескольких JTextFields из БД - PullRequest
0 голосов
/ 09 января 2012

Я хочу заполнить несколько полей JTextField данными, полученными из базы данных.Я знаю, я мог бы сделать что-то вроде:

while (rs.next()) {
   tfName.setText(rs.getString("name"));
   tfAge.setText(rs.getString("age"));
}

Но есть ли более разумный подход с одним return в конце метода select?

1 Ответ

1 голос
/ 09 января 2012

Вы можете поместить свои JTextFields в Map<String, JTextField>, а затем использовать строки ключей столбца базы данных в качестве ключей для карты текстового поля (скажем, называемой fieldMap), а также иметь массив этих строк ключей. тогда вы можете сделать что-то вроде:

while (rs.next()) {
  for (String key: KEY_STRINGS) {
    fieldMap.get(key).setText(rs.getString(key));
  }
}

Сказав это, while (rs.next()) немного меня настораживает, так как я боюсь, что while будет быстро перебирать строки базы данных и будет действительно отображать только последнюю строку базы данных. Это должно быть изменено.

...