当前位置: 首页 > 知识库问答 >
问题:

H2未找到适合jdbc的驱动程序:H2:mem:

司空鸣
2023-03-14

我正在尝试一个使用H2的示例。但我无法创建内存中的DB。运行以下程序时,我只收到一条错误消息:

Java语言sql。SQLException:在java上找不到适合jdbc:h2:mem的驱动程序。sql/java。sql。DriverManager。java上的getConnection(DriverManager.java:702)。sql/java。sql。DriverManager。数据库中的getConnection(DriverManager.java:251)。DBExample。main(DBExample.java:14)

在pom中。包含xml I

<dependency>
   <groupId>com.h2database</groupId>
   <artifactId>h2</artifactId>
   <version>1.4.200</version>
   <scope>test</scope>
</dependency>

有人知道怎么了吗?

import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;

public class DBExample {
    public static void main(String[] a) throws Exception {

        var url = "jdbc:h2:mem:";
        try (var con = DriverManager.getConnection(url);
             var stm = con.createStatement();
             var rs = stm.executeQuery("SELECT 1+1")) {
             if (rs.next()) {
                 System.out.println(rs.getInt(1));
             }
        } catch (SQLException ex) {
            var lgr = Logger.getLogger(DBExample.class.getName());
            lgr.log(Level.SEVERE, ex.getMessage(), ex);
        }
    }
}

共有1个答案

朱高丽
2023-03-14

问题是因为您指定了

此范围表示正常使用应用程序不需要依赖关系,仅在测试编译和执行阶段可用。

<dependency>
   <groupId>com.h2database</groupId>
   <artifactId>h2</artifactId>
   <version>1.4.200</version>
</dependency>

看看这里:没有找到驱动程序

 类似资料:
  • java。sql。SQLException:找不到适合jdbc的驱动程序:h2:tcp://localhost/当我尝试使用java web应用程序连接到h2数据库时,抛出了~/ZadatakDB。 我可以使用H2控制台没有任何问题,ping是成功的。 我还将h2-1.3.176 jar文件添加到库和WEB-INF/lib中。 下面是我用来连接的Java方法: 我会错过什么? 我还将添加Stack

  • 我的一些代码有问题,我已经搜索并尝试了我所知道的一切,但没有任何运气。 场景: > 应用程序检查JDBC驱动程序是否存在,在本例中是H2驱动程序(org.H2.driver) 如果不存在,应用程序将下载JDBC驱动程序并将其添加到类加载器中,如下所示:(注意:storageDataManager是我用于SQL方法的一个类) 当Storage ageDataManager运行第一个查询时,它会尝试与

  • 当我调试我的Mule应用程序时,我有错误: 我的java代码: 我的aaplicationContext: 我的app_name.properties: 我的pom: 我的类路径: 运行应用程序后的日志信息: 我还把h2-1.4.200.jar(当我从Anypoint Studio启动我的应用程序)到: 当我从mule服务器h2-1.4.200运行应用程序时。jar,我放在这里: 为什么找不到应用

  • 问题内容: 我正在尝试编写一个程序以在eclipse中连接到MySQL数据库,但出现错误 “ java.sql.SQLException:找不到合适的驱动程序” 。 Java代码是: } 控制台选项卡中的输出为: 我已经使用了MySQL Connector / J。将其解压缩到MySQL安装目录中,并将jar文件添加到CLASSPATH中。 另请参阅此图像。有一个 !在项目根目录上标记。image

  • 我已经把驱动程序jar放在模块\com\mysql\main中,在独立的\lib中,并创建了module.xml: 我的tandalone.xml是: 我想使用jpa所以我的persistence.xml是: 我还创造了一个豆子。xml并将mysql jar放入WEB-INF/lib中。 当我创建jpa facets并创建连接时,ping指向以下链接:jdbc:mysql://localhost:

  • 当我试图在Tomcat7上运行JSF应用程序时,它会抛出这个异常。 如果我在创建EntitiyManagerFactory之前添加这一行,它可以正常工作。 我的依赖是 此外,我的应用程序工作正常tomcat 6,没有添加 有办法解决这个问题吗?谢谢