HSQLDB(HyperSQL DataBase)在文件模式
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;
- <span style="font-weight: bold;">shutdown=true</span>;","SA","");
注意:使用该配置,只有在connection断开时才会进行持久化,如果在代码中没有close连接,修改的数据就不会被持久化,这也就是有些用户抱怨这种方式不工作的原因。
配置hsqldb.write_delay连接属性
实例代码如下:
- connection=DriverManager.getConnection("jdbc:hsqldb:file:feng;hsqldb.write_delay=false;","SA","");
使用该模式,无需断开连接,当对数据进行修改后,很快会被持久化,但也正因为此,使用该配置性能稍差些。
关于HSQLDB(HyperSQL DataBase)在文件模式File Mode下数据的持久化的相关知识就介绍到这里了,希望本次的介绍能够对您有所收获!
【编辑推荐】