クラス A にメソッドがあり、クラス B (メイン GUI) でそのメソッドを呼び出したいのですが、クラス A はクラス B 内の jTable に対して何らかのアクションを実行する必要があります。
データベースへの接続が必要であり、GUI にそのようなメソッドを保持させたくないため、このメソッドをクラス B 内に配置したくありません。
クラス A 内のコードは次のとおりです。
public void populatejTable(TableModel x) {
try {
String stmt = "SELECT * FROM APP.DATAVAULT";
PreparedStatement ps = Main.getPreparedStatement(stmt);
ResultSet rs = ps.executeQuery();
x.setModel(DbUtils.resultSetToTableModel(rs));
ps.close();
rs.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
モデルを設定するには、タイプ jTable のパラメーターを渡す必要があります。String、int などのさまざまな一般的なデータ型をすべて試し、jTable と TableModel も試しました。
あなたは本当にこれを行うべきではないと思いますが、これを回避するより良い方法がわかりませんか?
クラスB(私のGUI)内でこのメソッドを呼び出すコードは次のとおりです。
//table
Account acc = new Account();
acc.populatejTable(datavaultjTable);
これを行うにはどうすればよいですか?
私は Netbeans 7.3 Beta 2 GUI ビルダーを使用してテーブルと GUI を作成しています - OS X で Java を使用しています。