我对应用程序的JPA层进行了一些单元测试。此JPA层由JPA实体和提供持久存储实体所需的基本API的服务组成。单元Tet直接使用javax.persistence类来处理PersistenceManager。然后它测试了持久性API,我可以在日志中看到创建表和序列等的SQL语句。
persistence.xml文件的相关部分如下所示:
<persistence-unit name="..." transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
...
<properties>
<property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:test"/>
<property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/>
<property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/>
<property name="hibernate.hbm2ddl.auto" value="create-drop"/>
<property name="hibernate.format_sql" value="false"/>
<property name="hibernate.show_sql" value="true"/>
</properties>
</persistence-unit>
...
我已经下载了Windows安装程序H2 1.4.200,并将其安装在Windows 10上。现在,我想使用H2控制台连接到数据库并检查由Hibernate自动创建的表,序列等。
因此,转到http://localhost:8082,我得到以下信息:
但是当我尝试使用定义的JDBC连接字符串连接到数据库时,会得到以下信息:
我在这里做什么错了?
非常感谢。
尼古拉斯
答案 0 :(得分:0)
最后,我用Oracle替换了H2。