`
seawavenews
  • 浏览: 230240 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论
阅读更多
前言:该文章只是简单介绍一下hsql的入门内容,如果想仔细了解的话,参考官方帮助文档最为有用。

一、简介:
hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议,如果你是使用Java编程的话,不凡考虑一下使用它,相对其他数据库来说,其体积小,才563kb。仅一个hsqldb.jar文件就包括了数据库引擎,数据库驱动, 还有其他用户界面操作等内容。在Java开源世界里,hsql是极为受欢迎的(就Java本身来说),JBoss应用程序服务器默认也提供了这个数据库引 擎。由于其体积小的原因,又是纯Java设计,又支持SQL99,SQL2003大部分的标准,所以也是作为商业应用程序展示的一种选择。请到以下地址下载hsql: http://prdownloads.sourceforge.net/hsqldb/hsqldb_1_7_3_3.zip?download

二、使用hsql数据库:
1、hsql数据库引擎有几种服务器模式:常用的Server模式、WebServer模式、Servlet模式、Standlone模式、Memory-Only数据库。
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 数据库:顾名思义,主要是内存中使用,不用于保存数据。可以用于在内存中交换数据。

三、具体的链接与操作的话,和一般的JDBC操作一样。而相应的Server模式的话,连接地址主要你运行数据库界面操作工具时,在URL一栏时默认已经设好了,自己实习一下,对比其中参数。 
分享到:
评论

相关推荐

    HSQL数据库2.2.5

    《HSQL数据库2.2.5:轻量级数据库解决方案详解》 HSQL数据库,全称为HyperSQL Database,是一款开源的、轻量级的Java数据库管理系统,尤其适用于内存模式、单机模式以及分布式多机环境。HSQLDB 2.2.5是其一个重要的...

    HSQL安装部署使用手册

    《HSQL数据库安装部署使用详解》 HSQL(HyperSQL)是一种轻量级、高性能的关系型数据库管理系统,常用于开发测试环境或者嵌入式应用。本文将详细介绍HSQL的安装、部署以及使用过程,帮助您顺利搭建并操作HSQL数据库...

    Libreoffice 数据库 教程

    ### LibreOffice 数据库教程知识点详解 #### 一、引言 在开源办公套件领域,LibreOffice 是一个广受欢迎的选择。它不仅包含了文字处理、电子表格等常见工具,还包含了一个功能强大的数据库管理组件——LibreOffice...

    Liferay_Portal数据持久

    #### 一、HSQl数据库 ##### 1.1 HSQl简介 HSQl (HyperSQL) 是一款完全使用 Java 编写的关系型数据库管理系统 (RDBMS),其设计初衷是为了提供一个轻量级、高性能、易于使用的数据库解决方案。HSQl 的最新版本在本文...

    hsql及其官方说明书

    它的设计目标是提供一个轻量级、高性能、易于使用且完全符合SQL标准的数据库解决方案。HSQldb适用于各种应用场景,从小型嵌入式系统到大型服务器端应用,甚至作为测试环境中的数据库。 ### SQL语法支持 HSQldb 支持...

    高级数据库 数据技术

    【时态数据库技术详解】 时态数据库是一种特殊类型的数据库,它能够存储和处理随时间变化的数据,从而提供了对历史信息的全面记录和分析。时态数据库技术的发展与数据库技术的演进密切相关,随着时间的推移,它从...

    Liferay6 官方培训学习笔记

    虽然HSQL数据库适合快速测试和开发,但在生产环境中,通常推荐使用更稳定的企业级数据库,如Oracle、SQL Server或MySQL。接下来,我们将以MySQL数据库为例,详细说明如何配置Liferay的数据库连接。 **步骤2.1:新建...

    hibernate.properties详解

    ### hibernate.properties详解 在Java开发环境中,Hibernate作为一款优秀的对象关系映射(ORM)框架,简化了数据库操作。为了使Hibernate能够正确地与数据库进行交互,必须通过配置文件来指定连接信息及运行时参数...

    hql语句语法详解hql语句

    ### HQL语句语法详解 HQL(Hibernate Query Language)是一种面向对象的查询语言,它提供了灵活而强大的机制来查询数据库中的数据,并将其映射到Java对象上。本篇文章将根据给定的信息深入探讨HQL的基本语法结构...

    Migrating Jboss ESB from hsql to mysql

    在初始阶段,Jboss ESB可能配置为使用轻量级的HSQLDB内存数据库,但随着业务的发展,可能需要迁移到更强大的、支持事务处理和高可用性的MySQL数据库。本文将详细阐述这一迁移过程。 首先,我们需要了解Jboss ESB与...

    hsqldb-2.5.0.zip

    《HSQDDL数据库详解——基于hsqldb-2.5.0.zip的探索》 HSQDDL(HyperSQL Database)是一款轻量级、开源的Java实现的内存数据库系统,广泛应用于开发、测试以及嵌入式环境。hsqldb-2.5.0.zip是HSQDDL的一个版本,它...

    DWR让AJAX如此简

    该示例使用了HSQL数据库,这是一种轻量级的Java SQL数据库,可以直接与Web应用集成,无需额外安装。在应用启动时,通过SQL脚本创建内存中的表并填充数据。主要的Java类包括Apartment(表示公寓的实体类,包含属性和...

    Pentaho开源商业智能平台在CentOS中的搭建.docx

    - **MySQL:** 虽然 Pentaho 默认使用 HSQL 数据库,但在生产环境中通常建议使用 MySQL 或其他关系型数据库以获得更好的性能和可扩展性。确保已安装并配置好 MySQL 服务器。 - **CentOS 系统:** 本指南以 CentOS 5 为...

Global site tag (gtag.js) - Google Analytics