gpt4 book ai didi

Java让线程返回一些东西给主线程

转载 作者:行者123 更新时间:2023-12-01 07:35:53 26 4
gpt4 key购买 nike

我被困在某件事上,似乎想不出解决办法。我有一个名为 dbSelect 的函数,它会创建一个线程来运行 MySQL 查询并获取 ResultSet,但随后我需要 dbSelect 来获取该 ResultSet 并返回它。这是我所拥有的:

public class Utils {
public static void dbSelect(String query){
selectQuery = query;
Thread selectThread = new selectThreadClass();
selectThread.start();
}
}
class selectThreadClass extends Thread {
public void run(){
perform();
}

public ResultSet perform(){
Connection conn = null;
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection("jdbc:mysql://localhost/lob/?user=root&password=");

Statement s = conn.createStatement();
ResultSet rs = s.executeQuery(Utils.selectQuery);
return rs;
}catch (SQLException | InstantiationException | IllegalAccessException | ClassNotFoundException e){
e.printStackTrace();
return null;
}
}
}

任何人都可以帮我获取它,以便 dbSelect 从线程返回 ResultSet 吗?谢谢!

最佳答案

使用Callable

 public interface Callable<V> {
V call() throws Exception;
}

关于Java让线程返回一些东西给主线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12021938/

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