所以首先我已经看到过这个问题了 - 我查看了以前的答案并尝试用它来解决我的问题,但是我做不到。
我正在创建一个库系统,并为寄存器类和登录类编写代码,以及为数据库创建一个类。当我尝试运行程序时,我收到一条消息,说没有找到合适的驱动程序,后面跟着数据库的文件路径。这是我的数据库类:
import java.sql.*;
import javax.swing.JOptionPane;
public class javaConnect {
Connection conn;
public static Connection ConnecrDB() {
try {
Class.forName("org.sqlite.JDBC");
Connection conn=DriverManager.getConnection("jdbc.sqlite:process_f/Users/conorcurtis/Desktop/UNI/GCU IP Library/LibraryProject.sqliteiles");
return conn;
} catch(Exception e) {
JOptionPane.showMessageDialog(null, e);
return null;
}
我完全不知道该去哪里,所以任何帮助都会受到赞赏。谢谢!
答案 0 :(得分:1)
这里可能发生的是你的驱动程序不在你的类路径中。您当前的问题是您正在动态加载驱动程序,但找不到它。
通过添加到import指令,可以在调试时将其转换为编译时错误:
import org.sqlite.JDBC;
不同之处在于import指令是编译时依赖项,而Class.forName调用则建立运行时依赖项。通常我们这样做,所以我们可以在不重新编译的情况下更改使用哪些数据库(但是这里你的连接字符串是硬连线的,所以没有必要动态地进行)。例如,我们可以允许配置连接字符串,然后动态加载适当的驱动程序。
所以现在,添加该导入行并解决为什么找不到该类的问题。您可能有构建或类路径问题。例如,如果您正在使用maven,则需要将其添加到那里。
编译完成后,可以删除import指令并将错误恢复为运行时错误。
但基本清单是: