gpt4 book ai didi

java - SQL 代码的 NullPointerException 错误

转载 作者:行者123 更新时间:2023-11-29 13:25:39 25 4
gpt4 key购买 nike

我有这个表单,其中包含三个文本字段和两个单选按钮。该表格应该计算客户的账单金额。我编写了以下代码,它显示 NullPointerException 错误。

int noproduct;
double totalprice, price, shipcharge;
try{
Connection connection=getConnection();
stmt=connection.createStatement();
ResultSet rs1=stmt.executeQuery("Select count(ProductName) from buy;");
ResultSet rs2=stmt.executeQuery("Select sum(price) as TPrice from buy;");
noproduct=rs1.getInt("count(ProductName)");
NoProducts.setText(""+noproduct);
price=rs2.getDouble("TPrice");
shipcharge=3 * noproduct;
ShipCharges.setText(""+shipcharge);
totalprice=price+shipcharge;
TotalPrice.setText(""+totalprice);
if(CashRB.isSelected()){
totalprice=totalprice+(5*noproduct);
JOptionPane.showMessageDialog(null,"You have paid the bill by Cash!");
}
else if(CCardRB.isSelected()){
totalprice=totalprice-(5*noproduct);
JOptionPane.showMessageDialog(null,"You have paid the bill using Credit Card!");
}
}
catch(Exception ex){
System.out.println(ex.toString());
ex.printStackTrace();
}
finally{}

这一行具体显示了错误:

noproduct=rs1.getInt("count(ProductName)");

我需要一个替代代码来显示与此相同的结果。

它还显示了这些错误,我不太明白它们是什么:

java.lang.NullPointerException
at com.mysql.jdbc.ResultSetImpl.buildIndexMapping(ResultSetImpl.java:709)
at com.mysql.jdbc.ResultSetImpl.findColumn(ResultSetImpl.java:1069)
at com.mysql.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:2734)

有人可以帮我吗?预先感谢您。

最佳答案

将其更改为

 rs1.next();
noproduct=rs1.getInt(1);

see here

一个 Statement 允许有一个 ResultSet。在这种情况下你可能会遇到异常。因为您使用了 ResultSet res1 和 rs2。

关于java - SQL 代码的 NullPointerException 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20179436/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com