javamysql错误“找不到合适的驱动程序”,尽管类路径中有驱动程序

xienkqul  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(609)

我正在构建一个简单的web应用程序,我已将mysql配置为通过以下方式连接到我的程序:
添加maven依赖项,这在pom.xml文件中

<dependency>
     <groupId>mysql</groupId>
     <artifactId>mysql-connector-java</artifactId>
     <version>8.0.22</version>
 </dependency>

我在intellij中设置了连接,测试它会给我提供有效的连接测试,我甚至可以通过查询控制台运行sql查询:running query
更确切地说,我们可以看到mysql连接器jar文件已经被maven下载并添加到项目库中。jar文件
确保jbdc驱动程序在部署期间内置到工件中:工件部署中的驱动程序
为了测试我的连接,我有以下代码

package id.owl.owl;

        import javax.ws.rs.*;
        import javax.ws.rs.core.MediaType;
        import javax.json.*;
        import java.sql.Connection;
        import java.sql.DriverManager;
        import java.sql.SQLException;

        @Path("/hello-world"){     
        public class HelloResource {
            @GET
            @Produces("text/plain")
            public String hello() {

                String jdbcUrl = "jdbc:mysql://localhost:3306/test";
                String username = "root";
                String password = "root1234";
                String value ="hello world";

                try{
                    System.out.println("Connecting to database");
                    Connection connection = DriverManager.getConnection(jdbcUrl, username, password);
                }
                catch (Exception error){
                    value = error.toString();

                }

                return value;

                }

我得到的是 java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/test 我真的不知道我在这里还做错了什么,我看了很多关于这个错误的stackoverflow帖子,他们的解决方案都不起作用。驱动程序是导入的,我甚至可以通过ide运行查询,但由于某些原因不能通过代码运行。

nwlls2ji

nwlls2ji1#

所以这里是如何解决它,你不需要添加class.forname或任何东西。intellij实际上并没有为您导入jdbc驱动程序,即使它说是这样,您需要手动下载您正在使用的任何数据库的驱动程序,在我的例子mysql中,然后转到project structure>modules>add new library并添加下载的jdbc驱动程序。重新编译,现在就应该运行了。

相关问题