Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 未找到JDBC类_Java_Mysql_Jdbc - Fatal编程技术网

Java 未找到JDBC类

Java 未找到JDBC类,java,mysql,jdbc,Java,Mysql,Jdbc,我正在使用GlassFish制作一个web应用程序。在这个webapp中,我需要能够与MySQL数据库通信。我下载了mysql连接器jar文件,并将其添加到构建路径中。尽管如此,当我尝试连接到它时,还是会出现以下错误:java.lang.ClassNotFoundException:com.mysql.jdbc.Driver 这是我连接数据库的代码: public void connect(){ try { Class.forName(dbClass);

我正在使用GlassFish制作一个web应用程序。在这个webapp中,我需要能够与MySQL数据库通信。我下载了mysql连接器jar文件,并将其添加到构建路径中。尽管如此,当我尝试连接到它时,还是会出现以下错误:java.lang.ClassNotFoundException:com.mysql.jdbc.Driver

这是我连接数据库的代码:

public void connect(){
    try {
        Class.forName(dbClass);
        connect = DriverManager.getConnection(dbUrl, "root", "333333");
        statement = connect.createStatement();
        System.out.println("Connected to Database");
    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
我还附上了一个屏幕截图,以便您可以看到jar被添加到buildpath中:


感谢您的帮助。谢谢

jdbc驱动程序jar肯定不会导出到服务器。转到Eclipse中的problems视图,您应该会看到一条警告,表明jar未导出。右键单击并选择“快速修复”,然后按“确定”将其导出。

生成路径用于编译应用程序。在运行时,容器在web应用程序的web-INF/lib文件夹中搜索库。将它从构建路径中删除,放到这个目录中,Eclipse将自动将它添加到构建路径和运行时类路径中


请注意,在运行在JavaEE容器(如glassfish)中的webapp中,您通常将JDBC驱动程序放在JavaEE容器类路径中,并配置容器以提供封装应用程序连接池的数据源。应用程序使用其部署描述符和JNDI获取对此数据源的引用。检查glassfish文档。您不应该在每次请求Web应用时打开和关闭连接。

将mysql连接器jar粘贴到容器(即glassfish)的lib文件夹中

转到glassfish的安装目录

Glasshfish\u目录\glassfish\lib

然后将jar粘贴到那里,然后重新启动服务器


通过将jar放在服务器的lib文件夹中,服务器中的所有应用程序都可以访问jar文件。如果明天您想部署另一个应用程序,您不必再担心mysql connect jar。

右键单击FinanceWorkServer,进入弹出的“转到库”选项卡上的“构建路径”并选择jar选项,然后将mysql连接器添加到构建路径中。这就解决了问题。我会尽快接受你的回答:@Pazvanti-不客气:请同时阅读JB Nizet回答的最后一段。使用连接池非常重要。否则,您的应用程序将无法扩展。谢谢您的回答。我也将对此进行明确调查: