検索クエリを実行して結果をJTable
に表示したい場合は、私は、ユーザがという名前,年齢、またはIDのように検索するフィールドを選択できるJComboBox
を持っています。検索クエリとその結果をjtableに表示
これは私のコードです。
try {
Class.forName("com.mysql.jdbc.Driver");
String connectionUrl = "jdbc:mysql://localhost/db?" + "user=root&password=";
con = DriverManager.getConnection(connectionUrl);
Statement state = con.createStatement();
ResultSet result = state.executeQuery("SELECT * FROM db.atelier where '" +
jComboBox1.getSelectedItem().toString() + "'='" +
jTextField1.getText().toString() + "'");
ResultSetMetaData resultMeta = result.getMetaData();
while(result.next()){
model.addRow(new Object[]{result.getObject(1),result.getObject(2)});
model.setDataVector(
new Object[][]{{result.getObject(1),result.getObject(2)},{}},
new Object[]{resultMeta.getColumnName(1),resultMeta.getColumnName(2)});
}
jPanel1.revalidate();
model.fireTableDataChanged();
this.repaint();
state.close();
}
catch (SQLException e){
System.out.println("SQL Exception: "+ e.toString());
}
catch (ClassNotFoundException cE){
System.out.println("Class Not Found Exception: "+ cE.toString());
}
con=null;
あなたの質問は何ですか? – ControlAltDel
コードブロックに一貫した論理インデントを使用してください。 –
SQLインジェクションに関してこの[Q&A](http://stackoverflow.com/q/332365/230513)も参照してください。 – trashgod