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

来自H2DB文件的表不会出现在IDEA中,但会显示在H2控制台中

梁华清
2023-03-14

我有一些简单的Spring Boot项目,其中包含H2db文件和位置/数据库/数据库。mv。db(/来自我的项目总监)。应用属性为:

spring.datasource.url=jdbc:h2:./dbs/database;AUTO_SERVER=TRUE
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=password
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
spring.jpa.hibernate.ddl-auto=update

# Enabling H2 Console
spring.h2.console.enabled=true
# Custom H2 Console URL
spring.h2.console.path=/h2

所以,Spring Boot应用程序可以处理其中的表,并将数据存储在DB文件中。本地主机控制台:8080/h2也显示它。但我对IDEA有问题:IDEA只通过绝对名称获得连接(带有url jdbc的嵌入式源代码:h2:~/Documents/projects/java/seccomp/dbs/database;AUTO\u SERVER=TRUE)。但在这种情况下,IDEA根本不给我显示任何表格。我很困惑,也许应用程序在目标目录中创建了一些表?否,如果我已移除mv。db文件来自。dbs/it将在应用程序的数据操作后再次创建。

为什么应用程序和H2控制台会显示表,而IDEA不会?

共有1个答案

漆雕誉
2023-03-14

使用./dbs/Database;AUTO_SERVER=TRUE,您可以指定数据库文件的路径,该文件是相对于您运行程序的相应工作目录解析的。使用~/Documents/project/java/seccomp/dbs/Database-您可以相对于您的用户主页指定它。确保在这两种情况下您实际上指定了相同的路径。

 类似资料:
  • 我的数据确实显示在console.log中,但实际上没有显示在表中,我在这里做错了什么?

  • 我在SpringBoot api上工作,并使用具有以下属性设置的H2数据库。 当我想使用浏览器通过'http://localhost:8082/h2-console'查看H2数据库控制台时,浏览器中打开了一个带有连接和测试连接按钮的屏幕。当我单击Test Connection时,它返回成功,但当单击Connect按钮时,出现错误,即localhost拒绝连接。

  • 我使用gradle idea运行project,以更新依赖项,然后使用gradlew build和gradlew run。没有错误,但当我转到localhost:8080/h2-console时,我得到的只是连接错误。我也试过用gradle Build。为什么会出现这种情况?我也使用IntelIJ,我有红色的build和gradle文件夹,为什么?我使用的是这个指南:https://www.bae

  • 从IDEA运行Gradle任务时: 控制台输出如下所示: 可以看到,任务失败。但是我找不到失败的原因。 当从Gradle窗口启动任务时,有没有方法使Gradle输出显示在Intellij控制台中?

  • 问题内容: 我了解到,标准输出()中的所有内容都会显示在Java控制台窗口中(启用后)。我在某个地方发现了某些情况,例如在某些情况下,Swing应用程序对此没有尝试。是这样吗 基本上,什么情况或设置我都不会期望在控制台中看到标准输出? 例如,在JDK上运行而不是在JRE上运行的行为是否有所不同?javaw.exe? ps,我了解如何在Java设置中显示控制台,但我很好奇,因为我设法创建了一个应用程