在Java程序中,連接MySQL數據庫時可能會遇到超時的問題。這是因為默認情況下,MySQL對連接的超時時間是有限制的。此時,需要手動設置超時時間來避免這個問題。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConnectMySQL {
public static void main(String[] args) {
try {
// 注冊驅動程序
Class.forName("com.mysql.jdbc.Driver");
// 設置連接超時時間為5秒
DriverManager.setLoginTimeout(5);
// 連接MySQL數據庫
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?user=root&password=root");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
在上面的代碼中,設置連接超時時間的方法是使用DriverManager.setLoginTimeout()
方法。該方法的參數是以秒為單位的超時時間。
另外,也可以在連接字符串中設置超時時間。例如:
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?user=root&password=root&connectTimeout=5000");
在連接字符串中使用connectTimeout
參數設置超時時間,也是以毫秒為單位的。