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

无法以自动混合模式连接到H2数据库

锺离嘉容
2023-03-14

我在持久性中有以下配置。我的jpa应用程序的xml:

<properties>
        <property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/>
        <property name="javax.persistence.jdbc.url" value="jdbc:h2:c:/workdir/db/dev;AUTO_SERVER=TRUE"/>
        <property name="javax.persistence.jdbc.user" value=""/>
        <property name="javax.persistence.jdbc.password" value=""/>
<properties>

我想它被称为“自动混合模式”,我应该能够使用h2控制台中的jdbc:h2:file:c:/workdir/db/dev url访问它。

我启动h2控制台:

java -jar h2-1.3.172.jar -url jdbc:h2:file:c:/workdir/db/dev

然后,我只看到INFORMATION\u SCHEMA,没有看到我的应用程序创建的表。

怎么了?

共有1个答案

方宜
2023-03-14

好的,这是因为jpa应用程序使用了不同版本的h2 jar。所以解决方法是在任何地方使用相同版本的h2 jar。

 类似资料:
  • 我需要在两台计算机上安装相同的应用程序。我想在混合模式下使用h2数据库,即AUTO\u SERVER=TRUE。但我的问题是,当数据库文件存储在计算机1中时,如何从计算机2连接到此数据库。根据文档,url=“jdbc:h2:/dbfile;AUTO\u SERVER=TRUE”我无法使DBPATH在两台计算机上都工作。请帮忙。

  • 我一直在努力使用数据库URL概述部分提到的以下连接字符串从Spring Boot应用程序连接H2数据库: 我还尝试了许多不同的tcp(服务器模式)连接组合,但仍然出现错误,例如“连接中断:”java。网运行Spring Boot app时,SocketTimeoutException:连接超时:localhost:9092”。 那么,如何解决这个问题并通过服务器模式连接到H2数据库呢?

  • 测试通过,即数据输入数据库,检查,一切正常。 但当我在调试模式下运行测试,在测试末尾放一个断点,尝试连接到数据库时,它是空的,连表都没有,更别提数据了。要连接,我使用dbever。在连接字符串中,我编写jdbc:h2:mem:mytestdb;db_close_on_exit=false(我尝试了jdbc:h2:tcp://localhost:9092/mem:mytestdb)。检查连接通过,写

  • 我正在尝试转换现有的嵌入式H2数据库,并启用到它的外部连接。当前我的属性为 对于在这种模式下与我的数据库的本地连接,我似乎能够通过我的intellej IDE连接到“jdbc: h2: file:./db;AUTO_SERVER=TRUE;AUTO_SERVER_PORT=9090”。 如果此数据库托管在外部服务器上,如何连接到它?我尝试将主机名放入这个URL中,比如jdbc:h2:file:12

  • 我需要帮助。我不知道这个项目出了什么问题。我无法连接到h2数据库。即使我没有持久化任何对象,只是关闭连接,我也会得到错误。 对不起,我知道,这已经被问过几次了,但没有一个答案符合我的情况。 我得到的错误: pom.xml: Hibernate Utils类: 储存库 项目结构:

  • 我对一个应用程序的JPA层进行了几个单元测试。这个JPA层由JPA实体和一个提供持久化实体所需的基本API的服务组成。单元TET直接使用javax.Persistence类来处理PersistenceManager。然后测试持久性API,我可以在日志中看到创建表和序列等的SQL语句。 persistence.xml文件的相关部分如下所示: 我已经下载了Windows安装程序H2 1.4.200,并