gpt4 book ai didi

java - 从数据库中获取值

转载 作者:行者123 更新时间:2023-12-02 12:54:19 24 4
gpt4 key购买 nike

我一直在尝试从 txt1(jtextfield) 获取一个值,它是我数据库中的一个 id。但它一直说java.lang.NullPointerException。这是代码:

public void harga()
{

try {
stat = con.createStatement();
String query = "SELECT harga from obat WHERE ID = '"+ Integer.valueOf(txt1.getText())+"'";
stat.executeQuery(query);
ResultSet rs = stat.getResultSet();
while (rs.next()) {
int harga = rs.getInt("harga");
//String nama = rs.getString("nama");
System.out.println(harga);
}

} catch (SQLException e) {
e.printStackTrace();
}
}

最佳答案

首先@Sagar似乎是正确的,因为它不能确保txt1中有一个可转换的值。确保您应该为 txt1 添加 ChangeListener。 http://docs.oracle.com/javase/tutorial/uiswing/events/changelistener.html

其次,将查询连接在一起是不好的做法,尤其是当查询参数来自 UI 时。这背后的原因是您正在向 SQL 注入(inject)敞开大门。请改用 PreparedStatements: http://docs.oracle.com/javase/tutorial/jdbc/basics/prepared.html

祝您编码愉快,欢迎来到 Stackoverflow!

关于java - 从数据库中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44481802/

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