Как редактировать строку JTable? - PullRequest
0 голосов
/ 13 февраля 2011

Мне нужен учебник или метод, чтобы можно было выделить строку в Jtable, которая получает свои данные из базы данных mysql, затем нажать кнопку редактирования, чтобы запустить форму, которую я могу использовать для редактирования строки, а затем сохранить,Я использовал метод, который работал, но он вызывал много исключений, поэтому я считаю, что это плохой дизайн.

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

Редактировать 2: Вот что я вызываю, чтобы получить ключ, который я использую при редактировании запроса ... Я выделяю строку и вызываю эту функцию:

int id = ((Number) model.getValueAt(jTable1.getSelectedRow(), 0)).intValue() ;

тело функции было написано не мной. Это часть ResultSetTableModel файла

 public Object getValueAt( int row, int column )
      throws IllegalStateException
   {
      // ensure database connection is available
      if ( !dbConnection.isConnectedToDatabase() )
         throw new IllegalStateException( "Not Connected to Database" );

      // obtain a value at specified ResultSet row and column

      try
      {


          getResultSet().absolute( row + 1 );
         return getResultSet().getObject( column + 1 );
      } // end try
      catch ( SQLException sqlException )
      {
          System.out.println("Exception from here dude");
         sqlException.printStackTrace();
      } // end catch

      return ""; // if problems, return empty string object
       } // end method getValueAt

Здесь выдается исключение закрытого набора результатов, и я знаю, что причина в том, что я использовал тот же набор результатов перед заполнениемстол .Поэтому я хочу другую альтернативу.

Ответы [ 2 ]

1 голос
/ 13 февраля 2011

См. Как использовать таблицы .Но было бы полезно, если бы вы могли показать свой код.


Если ваша проблема в том, что ваше приложение выдает SQLException, то вам нужно показать свой SQL-запрос и схему базы данных для этой таблицы.

0 голосов
/ 13 февраля 2011

Здесь выдается исключение закрытого набора результатов, и я знаю, что причина в том, что я использовал тот же набор результатов, прежде чем заполнить таблицу.Поэтому я хочу другую альтернативу.

См. Таблица из базы данных .«Пример таблицы из базы данных» показывает, как вы можете создать DefaultTableModel из данных в ResultSet, чтобы вам не пришлось об этом беспокоиться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...