所以我最近试图将数据从数据库插入到Jtable中。该程序运行“ Quote” Jframe,其中包含名为“ tblQuote”的JTable。在“报价”屏幕中,有一个名为“添加产品”的按钮,它会打开一个框架,允许用户从数据库中选择一种产品。我在类引用中添加了一个方法来更新表,该表从添加产品类中接收作为参数的值。添加产品类从我的工作类接收值,该工作类连接到数据库并处理所有查询。
请不要所有的值都已成功从数据库中引入,并且用来更新表的方法已被System.out.println证明是运行的,该系统我曾经测试过该表是否已运行以及值是否正确< / p>
但仍然不会显示在表格中。
数据库连接代码:
public String updateTableQ(String name) {
String results = "";
try {
String qry = "SELECT * FROM tblProducts WHERE Name =?";
PreparedStatement pst = conn.prepareStatement(qry);
pst.setString(1, name);
ResultSet rs = pst.executeQuery();
while (rs.next()) {
results += rs.getString("Excl Price") + "/"
+ rs.getString("Incl Price") + "/";
}
} catch (Exception e) {
e.printStackTrace();
System.out.println(e.getMessage());
}
return results;
}
}
更新表格代码:
public void updateTable(String name, double ex, int qty, double vat, double disc, double total) {
Object[] row = {name, ex, qty, vat, disc, total};
DefaultTableModel model = (DefaultTableModel) tblQuote.getModel();
model.addRow(row);
System.out.println(name + " " + ex + " " + qty + " " + vat + " " + disc + " " + total);
}
}
在添加类中调用方法:
String name = cmbProduct.getSelectedItem().toString();
String str =db.updateTableQ(name);
String[] arr = str.split("/");
double excl = Double.parseDouble(arr[0]);
double total = Double.parseDouble(arr[1]);
double vat = 15;
double disc = Double.parseDouble(txtInDiscount.getText());
int qty = Integer.parseInt(txtInQty.getText());
q.updateTable(name, excl, qty, vat, disc, total);
this.dispose();