我使用以下配置(直接受Hibernate教程启发)没有任何问题:
<hibernate-configuration> <session-factory> <!-- Database connection settings --> <property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/> <property name="hibernate.connection.url" value="jdbc:hsqldb:mem:foobar"/> <property name="hibernate.connection.username" value="sa"/> <property name="hibernate.connection.password" value=""/> <!-- JDBC connection pool (use the built-in) --> <property name="connection.pool_size">1</property> <!-- SQL dialect --> <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/> <!-- Enable Hibernate's automatic session context management --> <property name="current_session_context_class">thread</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> <!-- Drop and re-create the database schema on startup --> <property name="hibernate.hbm2ddl.auto" value="update"/> <mapping resource="..."/> </session-factory></hibernate-configuration>
使用内存中的HSQLDB时,无需显式启动任何内容。只需使用该
mem:协议,内存数据库就会从JDBC开始。
也可以看看
- 使用HSQLDB进行单元测试休眠



