• 締切済み

javaでデータベース(mysql)からデータを取得しJTableにinsertする方法が分かりません。

JLabelになら分かるのですがJTableのほうがよく分からないのです。 また、どのように記述すればよいのでしょうか? 参考までにJLabelの方を乗せておきます。 すべては自分の勉強不足が原因なのですが、お分かりになる方はお知恵をお貸し下さい。 private void displayData(){ try { MainMenu mainMenu = new MainMenu(); sqlStr = mainMenu.getSendsqlstr(); System.out.println(sqlStr); //ドライバクラスをロードする Class.forName("com.mysql.jdbc.Driver");//org.gjt.mm.mysql.Driverこっちの可能性もあり //MySQLに接続 con = DriverManager.getConnection("jdbc:mysql://localhost:3306/nelfsystem", "root", "root"); //ステートメント生成 pstmt = (PreparedStatement) con.prepareStatement(sqlStr); //SQL文実行 rs = pstmt.executeQuery(sqlStr); rs.first(); // 最初の行に移動 jLabel30.setText("" + rs.getInt("member_id")); jLabel31.setText(rs.getString("member_name")); jLabel32.setText(rs.getString("member_furigana")); jLabel33.setText(rs.getString("birth_day")); jLabel34.setText(rs.getString("sex")); jLabel36.setText(rs.getString("telephone")); jLabel37.setText(rs.getString("telephone_2")); jLabel29.setText(rs.getString("zipcode")); jLabel38.setText(rs.getString("address")); jLabel39.setText(rs.getString("address_2")); jLabel41.setText(rs.getString("douki")); jLabel40.setText(rs.getString("e_mail")); jTextArea2.setText(rs.getString("remarks")); } catch(Exception ex){ System.out.println("Error:" + ex.toString() + ex.getMessage()); } }

みんなの回答

noname#94983
noname#94983
回答No.1

MySQLからレコードを取得する方法は既にわかっていて、JTableに値を表示する方法がわからない、ってことだろうか。 JTableに値を表示する場合は、一番簡単なのは表示する値を配列にまとめてnew JTableする際に渡す、というやり方。値を取り出して、二次元配列にまとめてnew JTableのときに引数で渡す。 が、一般的なのは、モデルクラスを定義して、そいつをJTableに設定するやり方だろう。後々を考えると、こっちを採用したほうがいいな。参考URLの記事を参照のこと。

参考URL:
http://allabout.co.jp/internet/java/closeup/CU20080120A/