Java 我能';t连接到H2数据库

Java 我能';t连接到H2数据库,java,h2,Java,H2,我正在看一个关于使用数据库的培训项目。那里的主数据库是MySQL,H2用于测试,下面是一个教程: <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>test</scope> </dependency> 测试通过,即数据输入数据库,检查,一切正常 但是当

我正在看一个关于使用数据库的培训项目。那里的主数据库是MySQL,H2用于测试,下面是一个教程:

<dependency>
      <groupId>com.h2database</groupId>
      <artifactId>h2</artifactId>
      <scope>test</scope>
</dependency>
测试通过,即数据输入数据库,检查,一切正常

但是当我在调试模式下运行测试时,在测试结束时放置一个断点并尝试连接到数据库,它是空的,甚至没有表,更不用说数据了。要连接,我使用Dbever。在连接字符串中,我编写jdbc:h2:mem:mytestdb;DB_CLOSE_ON_EXIT=FALSE(我尝试了jdbc:h2:tcp://localhost:9092/mem:mytestdb). 检查连接过程,写入一切正常,连接已建立。有什么问题吗

我尝试写入一个文件,而不是url:jdbc:h2:mem:ump currencymanager;DB_CLOSE_ON_EXIT=FALSE我写了:url:jdbc:h2:file:c:\logs\logdb文件是在我用Dbever打开它时创建的,甚至表也在那里,但表本身没有数据

研究了关于这一主题的类似问题

  @Test
  public void createPeopleTable() throws SQLException {
    int count = peopleService.count();
    assertEquals(0, count);
    peopleService.createPeopleTable();
    count = peopleService.count();
    assertEquals(34, count);
  }

您已经了解了如何从数据库切换到基于文件的存储

尝试早些设置断点。也许在测试结束时,有一些清理会删除所有表?或者可能有一种方法来进行清理

另一个想法:在考试中写一个地方:

connection.createStatement().execute("BACKUP TO '<desired-location>/backup.zip';");
connection.createStatement().execute(“备份到“/BACKUP.zip”;”);

我已经尝试在一开始就设置一个断点,并逐步完成整个测试。没用,但要把它插到哪里?我只是在学习春天+冬眠。我对这项技术不太了解。我从项目中添加了一个测试方法。在找到数据库包含内容的位置之前,您尝试断点的位置与此相同。我不明白connection.createStatement()方法是什么。我怎么称呼它呢?也许看看这里:
connection.createStatement().execute("BACKUP TO '<desired-location>/backup.zip';");