gpt4 book ai didi

java - 当键入一个 Jtextfield 时,从数据库中将数据提取到 Jtextfield 中

转载 作者:行者123 更新时间:2023-12-01 17:29:06 27 4
gpt4 key购买 nike

大家好,我有一个连接到 Oracle 数据库的 Swing 应用程序,我希望一旦我在 JTextField 中键入一个值,JFrame 上的其他 JTextfield 就会加载来自数据库的后续数据,但我不这样做似乎实现了这一点。我已经尝试了以下代码,但没有任何结果。

txtNo.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent ke) {
Connection conn = null;
try{
Class.forName("oracle.jdbc.driver.OracleDriver");

conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE", "Username", "Password");
Statement st = conn.createStatement();
String load = "Select * from Store_info_table where PART_NUMBER = '" + txtNo.getText() + "'";
ResultSet rs = st.executeQuery(load);
while(rs.next()){
txtName.setText(rs.getString("SPARE_DESC"));
}
}catch(Exception ae){

}
}
});

最佳答案

  • KeyListener 替换为 DocumentListener
  • EDT 上的数据库连接不是一个好主意(太慢)。咨询concurrency in Swing指南了解更多信息
  • 您容易受到 SQL 注入(inject)攻击
  • 避免空的 catch 语句,否则您不知道出了什么问题。如果您不选择适当的错误处理,至少记录堆栈跟踪(通过打印它,或使用记录器)。

关于java - 当键入一个 Jtextfield 时,从数据库中将数据提取到 Jtextfield 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12751706/

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