所以我在我的框架和jComboBox上有这个jTable。在我的jComboBox里面是手机列表。我想要做的是让jTable获取jComboBox中特定产品的数据库。假设我在jComboBox中选择了三星S7。当我点击"详细信息" jButton jTable将显示三星S7的数据(型号,价格,库存等)。我该怎么做呢?这是我的代码:
try {
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/projectephone","root","");
String sql= "select * from samsung";
PreparedStatement pst = con.prepareStatement(sql);
ResultSet rs= pst.executeQuery();
jTable1.setModel(DbUtils.resultSetToTableModel(rs));
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Failed to add");
}
}
但是这段代码只是让我的jTable显示了我数据库表中的所有数据。有什么想法吗?
答案 0 :(得分:3)
单击详细信息按钮时
从JComboBox
获取当前所选手机(作为电话名称或内部ID提供到您的数据库表或其他内容中)
然后使用此值来限制搜索。
例如
String phoneName = ... // current selected in the the combobox
String sql= "select * from samsung where name = ?";
PreparedStatement pst = con.prepareStatement(sql);
pst.setString(1, phoneName);
ResultSet rs= pst.executeQuery();