我在尝试编译时遇到此错误
ConnectDB.java:14: error: unreported exception ClassNotFoundException; must be caught or declared to be thrown
Class.forName("com.mysql.jdbc.Driver");
import java.sql.*;
import java.sql.Connection;
import java.sql.DriverManager;
public class ConnectDB
{
public ConnectDB() throws SQLException
{
Class.forName("com.mysql.jdbc.Driver");
Connection dbConnect = DriverManager.getConnection("jdbc:mysql://xx.xx.xxx.xxx:3306/my_DB", "userName", "superSecurePassword");
}
}
我已经下载并安装了驱动程序并设置了类路径,但继续收到错误。
答案 0 :(得分:4)
那是因为编译器告诉您,您没有捕获已检查的异常。您需要适当的处理:
try {
Class.forName("com.mysql.jdbc.Driver");
} catch(ClassNotFoundException e) {
// log exception, probably abort application if it can't run without a database
}
答案 1 :(得分:1)
您需要放置以下代码
Class.forName("com.mysql.jdbc.Driver")
在尝试捕获块中。因为代码抛出 * 已检查异常 *且编译器强制捕获 已检查异常。