【发布时间】:2015-10-25 20:26:41
【问题描述】:
我正在使用以下代码使用 JDBC 打开与 SQL 数据库的连接
Runnable getConn = new Runnable() {
@Override
public void run() {
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
tracking = true;
activity.run();
} catch (SQLException se) {
se.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
};
Thread connection = new Thread(getConn);
connection.run();
它可以工作,但它会冻结 UI 线程,直到打开连接。关于如何将其移动到单独的线程以便它不会停止 UI 线程的任何想法?我在 android 上使用 asyncTask 执行此操作,但我不知道如何在 Java 中执行此操作。
【问题讨论】:
-
connection.start()? -
谢谢它的工作...发布它作为解决方案,我会接受它
-
不知道为什么有人反对这个问题。 OP提供了足够的代码和一个问题。更不用说否决的选民没有费心解释原因。有些人只是令人沮丧。
-
@horin 将其作为答案发布。我似乎错过了您的评论(可能是因为您没有使用@CKing 向我发邮件)
标签: java multithreading jdbc