06-Hsqldb数据库

优点:
  • 纯Java编写,开源免费,可商用
  • 轻巧,只有700多kb,运行速度快
  • 不需要安装,来回复制,随身携带,使用非常方便
  • 稳定,支持足够大的数据量
  • 小型项目作为现场数据库使用,减轻了维护成本,Hsqldb非常容易备份
  • 作为单元测试数据库。单元测试的时候,启动Hsqldb的men模式,数据不存盘,可以保证测试原子性
缺点:
  • 对数据库的所有操作都会记录在script文件中,保密程度不高
下载地址:http://sourceforge.net/projects/hsqldb/files
目录说明:

  • Doc:使用说明文档
  • Src:Hsqldb源代码
  • Lib:打好的包
  • Demo:处理脚本,用来打开数据库管理工具界面以及开启server模式等脚本
项目中只需要用到hsqldb.jar
Hsqldb三种模式:
  1. Server模式
Server模式提供了最大的可访问性,这种模式下,数据库引擎在JVM中运行。在大多数的Server模式中,服务器可以在运行的时候为最多10个数据库服务
Server模式可以预设属性和命令行参数。根据服务器和客户端之间的通讯协议不同,Server模式可以分为以下三种:
  • Hsqldb Server: 此模式是首选的也是最快的。他采用Hsqldb专有的通讯协议
  • Hsqldb Web Server:此协议只能用在通过HTTP协议访问数据库服务器主机的时候。采用此种模式的唯一原因是客户端或服务器端的防火墙对数据库对网络连接强加了限制
  • Hsqldb Servlet:此模式和Web Server一样采用HTTP模式,当如tomcat或Resin等servlet引擎(或应用服务器)提供数据库的访问时,可以使用此模式。但是servlet模式不能脱离servlet容器独立启动
  1. In-Process(standalone)模式
In-Process(standalone)模式下,数据库引擎作为应用程序的一部分在同一个JVM中运行。对于一些应用程序来说,这种模式数据不用转换和通过网络传送,速度会更快一些。
其缺点就是默认的不能从应用程序外连接到数据库
在一个应用程序中,推荐的使用In-Process(standalone)模式是:开发的时候使用Server实例,部署的时候转换到In-Process(standalone)模式
  1. Memory-Only模式
此模式下,数据库不是持久化的而是全部在内存中,因此,这种模式只能用于应用数据的内部处理上
总结:
  • Memory-Only模式:只存在内存中,关闭数据库或重启机器,数据就消失了。但是因为存在于内存中,故读取速度非常快,而且可以包持数据的原子性。这种模式在测试上用的比较多
  • In-Process(standalone)模式:数据存在机器的指定位置,官方介绍的JDBC的连接方式如下:
Connection conn=DriverManager.getConnection('jdbc:hsqldb:file:file:testdb','sa','');

它的特点是数据保存在硬盘中,关闭数据库或者重启机器,数据不会丢失。缺点是不能通过数据库管理工具来查看数据情况

  • Server模式:此模式中最常用的是“Hsqldb”模式,他的特点是数据保存在硬盘中,关闭数据库或重启机器,数据不会丢失。但是它于In-Process(standalone)模式的不同之处在于,它可以通过数据库管理工具查看数据,但是缺点是必须打开服务。
官方建议:开发时使用Server模式,部署时使用In-Process(Standalone)模式

转载于:https://my.oschina.net/majorx/blog/3034297

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值