HSQLDB 和 Hibernate/JPA - 不持久化到磁盘?
有点像HSQL和Hibernate的新手...
em.getTransaction().begin();
for (Activity theActivity : activities) {
em.persist(theActivity);
}
em.getTransaction().commit();
em.close();
其次。。。
EntityManager em = emf.createEntityManager();
em.getTransaction().begin();
System.out.println("QUERY:: "
+ em.createQuery("SELECT COUNT(*) FROM " + Activity.class.getName()).getSingleResult()
.toString());
em.getTransaction().commit();
打印 25000(活动中活动对象的数量)。但是当我再次运行此测试时,count(*) 中的对象数不会增加(并且在程序开始时为 0)。因此,对象没有得到持久的编写。
这是我的 hsqldb 连接字符串:
name="hibernate.connection.url" value="jdbc:hsqldb:file:data/cmon"
所以据我所知,它不是一个内存数据库...
有没有人知道为什么对象没有在单个JVM会话之外持久化?很高兴提供更多信息,但是与Hibernate / JPA / HSQL相关的状态太多了,因此尚不清楚确切的相关内容。