关键字:Embedded DB;Hyper SQL;File Mode下持久化
对于任何Embedded DB,我们都期望它能满足以下需求:
- 与标准SQL兼容,使用标准SQL可以操作数据并进行持久化;
- 使用简单,就Java而言,它能够和应用处于同一个JVM中。
HSQLDB是一款基于Java的非常优秀的嵌入式数据库。它提供三种使用模式:
- Mem Mode
- File Mode
- Server Mode
Mem Mode只在内存中操作,不对数据进行持久化;使用Server Mode数据库和应用不在一个JVM中,也就是说,和Oracle, MySQL一样,在启动应用前必须先启动数据库,失去嵌入式数据库的意义了。File Mode能够满足上文提出的两个需求。它能够将应用在本次启动中作出的变化持久化,以便下次启动应用后能够基于之前的信息。在默认使用下,File模式是不进行持久化的,需要进行如下配置才能使其持久化:
- 配置shutdown连接属性
- 配置hsqldb.write_delay连接属性
配置shutdown连接属性
实例代码如下:
connection = DriverManager.getConnection("jdbc:hsqldb:file:chenzhe;shutdown=true;","SA","");
注意:使用该配置,只有在connection断开时才会进行持久化,如果在代码中没有close连接,修改的数据就不会被持久化,这也就是有些用户抱怨这种方式不工作的原因。
配置hsqldb.write_delay连接属性
实例代码如下:
</

本文介绍了HSQLDB作为嵌入式数据库的File Mode如何实现数据持久化。通过设置shutdown连接属性和hsqldb.write_delay属性,确保在应用关闭时或数据修改后进行持久化操作。File Mode在满足标准SQL兼容性和简单使用的同时,能够在多次应用启动间保持数据。默认情况下,File Mode不进行持久化,需通过配置实现。
最低0.47元/天 解锁文章
1017

被折叠的 条评论
为什么被折叠?



