持久性单元不是持久的

时间:2010-06-16 16:45:41

标签: java jpa hsqldb

我需要创建嵌入式数据库的持久性单元,该数据库在关闭EntityManager后保持持久性。

这是我的PU:

<persistence-unit name="hello-jpa" transaction-type="RESOURCE_LOCAL">
  <class>hello.jpa.User</class>
  <properties>
    <property name="hibernate.show_sql" value="true"/>
    <property name="hibernate.format_sql" value="true"/>
    <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
    <property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/>
    <property name="hibernate.connection.username" value="sa"/>
    <property name="hibernate.connection.password" value=""/>
    <property name="hibernate.connection.url" value="jdbc:hsqldb:target/hsql.db"/>
    <property name="hibernate.hbm2ddl.auto" value="update"/>
  </properties>
</persistence-unit>

它会在关闭申请后删除数据。

1 个答案:

答案 0 :(得分:3)

我对the documentation的理解是“旧”网址jdbc:hsqldb:.创建或连接到与URL jdbc:hsqldb:mem:.的新表单相同的数据库(即在内存中)。

请尝试使用以下网址:jdbc:hsqldb:file:target/hsql.db