持久化单元不是持久化的
Posted
技术标签:
【中文标题】持久化单元不是持久化的【英文标题】:Persistence unit is not persistent 【发布时间】:2010-06-16 16:45:40 【问题描述】:我需要创建嵌入式数据库的持久性单元,在关闭 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】:我对@987654321@ 的理解是“旧” URL jdbc:hsqldb:.
创建或连接到与URL jdbc:hsqldb:mem:.
的新表单相同的数据库(即在内存中)。
因此请尝试使用以下 URL:jdbc:hsqldb:file:target/hsql.db
。
【讨论】:
我也不工作 :(。在这两种情况下都没有这样的文件 lie target/hsql.db... @etam 你可以尝试使用绝对路径(只是为了检查)吗?我对工作目录有疑问。 我所拥有的只是(相对和绝对):~/etam-svn/code/java/hello-jpa > ls target/ classes hsql.db.log maven-archiver hello-jpa-derby -1.0-SNAPSHOT.jar hsql.db.properties 测试类 @etam 我刚刚做了一个测试,下面的 urljdbc:hsqldb:file:target/testdb
肯定有效:ls target/ classes test-classes testdb.properties xsd surefire-reports testdb.log testdb.script跨度>
它是否在会话之间保留对象?以上是关于持久化单元不是持久化的的主要内容,如果未能解决你的问题,请参考以下文章
UICollectionView 单元格不保留数据 --- 如何使它们的数据持久化?