我已经按照步骤设置了HSQLDB和Hibernate。现在创建了一个小用户详细信息实体类。并创建了hibernate.cfg文件,给出了我的实体类addr。程序执行正确,但是当我打开数据库时,细节不会更新。
这是我第一次使用im-mem数据库,真的很难理解它是如何工作的。
只是无法理解这里的错误......
我从eclipse lib文件夹启动服务器(我已经添加了hsqldb jar)
然后执行主类,没有显示错误或异常,能够在控制台中看到sql查询。但是db
中没有任何内容我的hibernate.cfg如下
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="connection.driver_class">org.hsqldb.jdbcDriver</property>
<property name="connection.url">jdbc:hsqldb:mem:testdb</property>
<property name="connection.username">java</property>
<property name="connection.password"></property>
<!-- JDBC connection pool (use the built-in) -->
<property name="connection.pool_size">10</property>
<!-- SQL dialect -->
<property name="dialect">org.hibernate.dialect.HSQLDialect</property>
<!-- Enable Hibernate's current session context -->
<property name="current_session_context_class">org.hibernate.context.ManagedSessionContext</property>
<property name="hibernate.cache.use_second_level_cache">false</property>
<property name="hibernate.cache.use_query_cache">false</property>
<!-- Disable the second-level cache -->
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">create</property>
<!-- the annotated entity class -->
<mapping class = "com.javaapp.addressbook.dto.UserDetails"/>
</session-factory>
附上eclipse快照
提前致谢
答案 0 :(得分:4)
您正在连接到存储在应用程序进程中的内存数据库:
<property name="connection.url">jdbc:hsqldb:mem:testdb</property>
如果要连接到HSQLDB服务器提供的数据库,那么您的URL应如下所示:
<property name="connection.url">jdbc:hsqldb:hsql://localhost/testdb</property>
实际的URL取决于您配置服务器的方式。