一、简介:
hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议。
相对其他数据库来说,其体积小,才563kb。
仅一个hsqldb.jar文件就包括了数据库引擎,数据库驱动,还有其他用户界面操作等内容。
下载地址:http://hsqldb.org/
二、使用hsql数据库:
1、hsql数据库引擎有几种服务器模式:常用的Server模式、WebServer模式、Servlet模式、Standlone模式、Memory-On­ly数据库。
2、最为常用的Server模式:
1)首先却换到lib文件夹下,运行java -cp hsqldb.jar
org.hsqldb.Server -database.0 db/mydb -dbname.0 xdb
执行命令后,将会在db文件夹下创建一个数据库mydb,别名(用于访问数据库)是xdb,如果存在mydb数据库,将会打开它。
2)运行数据库界面操作工具:java -cp hsqldb.jar
org.hsqldb.util.DatabaseManager
在Type选项里选上相应的服务器模式,这里选择HSQL
Database Engine
Server模式;Driver不用修改;URL修改为jdbc:hsqldb:hsql://localhost/xdb
(主要这里xdb就是上面我们设置的别名);user里设置用户名,第一次登录时,设置的是管理员的用户名,password设置密码。然后点击Ok。
3)第一次运行数据库引擎,创建数据库完毕。好了,你可以打开db文件夹,会发现里面多了几个文件。
mydb.properties文件:是关于数据库的属性文件。
mydb.script:hsql主要保存的表(这里按hsql的说法是Memory表,就是最为常用的),里面的格式都是文本格式,可以用文本查看,里
面的语­句都是sql语句,熟悉sql语句的话,你也可以手动修改它。每次运行数据库引擎的话都是从这里加载进内存的。
mydb.lck表示数据库处于打开状态。
其他的请参看hsqldb包里的手册。
3、WebServer模式和Server运行模式基本一样,只是支持了Http等协议,主要用于防火墙,默认端口是9001。启动Server,java
-cp hsqldb.jar org.hsqldb.WebServer ...剩余的和上面的一致。
4、Servlet模式可以允许你通过Servlet容器来访问数据库,请查看hsqlServlet.java的源代码,和WebServer类似。
5、另一个值得思考的模式是Standalone模式:不能通过网络来访问数据库,主要是在一个JVM中使用,那样的话,访问的速度会更加快。虽然文档里
面提到­主要是用于开发时使用,但是我们可以假设一下,该方法不需要一个引擎类的东西,而类似于打开文件的方式,返回一个
Connection对象:
Connection c = DriverManager.getConnection("jdbc:hsqldb:file:mydb",
"sa", "");
将会在当前目录找到mydb数据库相关文件,打开并返回一个Connection对象。该方式有点好处就是可以不使用引擎,在需要的时候操作数据。所以那
些对数­据库不是特别有要求的,但又需要一个操作数据库的方式的话,可以使用这种方法。对于那些不想额外在数据库引擎花费金钱的话,可以
使用这种方法。但是不推荐使用该­方法。记得Hibernate里SessionFactory可以使用openSession
(Connecttion
c)来获得一个Session对象的,因此,在测试或者实际应用的话都可以这样使用。
6、Memory-Only
数据库:顾名思义,主要是内存中使用,不用于保存数据。可以用于在内存中交换数据。
上面是关于hsqldb的一些基本信息的介绍,可以看到它的一些优势和特性。
我们可以把hsqldb内置在web程序中,除考虑Standalone模式外,最好是采用最为常用的Server模式。
那么Server模式如何和web程序合理搭配使用呢。
可以采用两种方式:
1)采用上面提到的方法,运行java -cp hsqldb.jar
org.hsqldb.Server -database.0 db/mydb -dbname.0 xdb
来启动db,通过设置的URL:jdbc:hsqldb:hsql://localhost/xdb
以达到在程序中访问hsql数据库的
(注:设置URL等信息,可以通过hibernate来配置,例如:
hibernate.dialect org.hibernate.dialect.HSQLDialect
hibernate.connection.driver_class org.hsqldb.jdbcDriver
hibernate.connection.username sa
hibernate.connection.password
hibernate.connection.url jdbc:hsqldb:hsql://localhost/xdb )
2)为了省去第一种方法的琐碎,可以在启动web容器的过程中同时启动hsqldb。具体做法如下:编写一个有关hsql的Listener类,扩展javax­.servlet.ServletContextListener,可以在配置文件中设置dbPath、dbName、port等等hsqldb的信息,启动h­sqldb。
在web.xml中配置
com.iplan.portal.framework.web.HsqlListener
这样在启动web容器的时候,同时启动了hsqldb,关闭容器的时候同时也shutdown掉hsqldb。
还有一点说明的是:在单体或是结合测试的时候,可以采用Memory-Only
数据库,这样可以保证原有数据库中数据的完整性,这也是比较好的一个功能。
分享到:
相关推荐
HSQLDB数据库,经典啊
hsqldb是我们进行Java开发的最常用的数据库之一,希望大家能够喜欢
基于Struts2的员工管理系统,有系统管理员、企业管理员、员工三个角色。实现公司、员工、部门的增、删、查、改功能,还能够批量导入、导出员工的Excel表。
HSQLDB中文文档,能够提高数据的处理速度。
HSQLDB的安装,使用,以及简单的例子讲解
HSQLDB 是一个轻量级的纯Java开发的开放源代码的关系数据库系统。因为HSQLDB的轻量(占用空间小),使用简单,支持内存运行方式等特点,HSQLDB被广泛用于开发环境和某些中小型系统中。 HSQLDB的运行需要Java环境的...
hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议。 相对其他数据库来说,其体积小,才563kb。...仅一个hsqldb.jar文件就包括了数据库引擎,数据库驱动,还有其他用户界面操作等内容
hsqldb小型数据库,适合快速开发,非常给力
Hsqldb是一个开放源代码的JAVA数据库,其具有标准的SQL语法和JAVA接口,它可以自由使用和分发,非常简洁和快速。
hsqldb数据库下载,很好用,简易的内存数据库,特别适合初学者
NULL 博文链接:https://czpae86.iteye.com/blog/1422451
该程序是 HSQLDB 数据库的包装器。 它允许配置、启动、停止和监视 HSQLDB 数据库,作为托盘图标留在系统托盘中。 它是在 Java 上开发的,因此它是独立于平台的。
hsqldb数据库下载,很好用,简易的内存数据库,特别适合初学者。
src:HSQLDB数据库的最新源代码,在源代码中附加了轻松分析理解代码的注释 把代码引入Eclipse 运行mvn eclipse:eclipse生成Eclipse项目,打开Eclipse,选择File-> Import-> Existing Projects into Workspace 运行...
该程序是HSQLDB数据库的包装。 它允许配置,启动,停止和监视HSQLDB数据库,并作为托盘图标保留在系统托盘中。 它基于Java开发,因此与平台无关。
Oracle数据库移植到HsqlDB操作手册
数据库管理工具,支持mysql、hsqldb等多种数据库
HyperSQL也是一个不错的嵌入式数据库 ">hsqldb 2 3 2 zip HyperSQL是用Java编写的一款SQL关系数据库引擎 它的核心完全是多线程的 支持双向锁和MVCC 多版本并发控制 几乎完整支持ANSI 92 SQL 支持常见数据类型 最新...
在dbperf根目录下执行下面的shell命令:mkdir doc-srccd buildant hsqldb#在build文件夹下面借助build.xml构建hsqldb的jar包,保证出现build successful之后在运行下面的指令建表和数据插入在dbperf根目录下,执行...
用JAVA写的hsqldb面向对象的数据库 非常轻量级 适合自己进行JAVA程序的开发,里面含有源代码。 极力推荐!!!!