`
simulate
  • 浏览: 1646 次
  • 来自: ...
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

入门系列--纯Java的免费多功能数据库hsql

阅读更多
前言:该文章只是简单介绍一下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一栏时默认已经设好了,自己实习一下,对比其中参数。
分享到:
评论

相关推荐

    HSQLDB中文文档

    - **定义**:HSQLDB(HyperSQL Database)是一款轻量级、开源的纯Java SQL数据库管理系统,适用于开发测试、小型应用和嵌入式场景。 - **特点**: - 轻量级:体积小、资源占用低。 - 纯Java实现:可以在任何支持...

    HSQLDB快速上手实录

    ### HSQLDB快速上手实录 #### 一、引言 HSQLDB(HyperSQL Database)是一款基于Java编写的轻量级关系型数据库管理系统,它...希望本篇文章能够帮助初学者快速上手HSQLDB,并在实践中不断探索更多的功能和技术细节。

    Pentaho_3_7_0_Linux_and_MySQL.pdf

    - **禁用 HSQL 数据库启动**:因为已经使用 MySQL,所以需要禁用默认的 HSQL 数据库。 - **Trusted Ip Addrs**:设置信任 IP 地址列表。 - **其他参数**:根据需要调整其他 Tomcat 参数。 #### 配置 SMTP (邮件...

    Ilog中文文档

    - **HSQL数据库引擎**:一个高性能的嵌入式数据库解决方案。 - **JOnAS**:一个企业级应用服务器,用于部署和管理Java EE应用程序。 - **Apache Tomcat**:一个轻量级的Servlet容器,常用于Web应用程序的开发和部署...

    mybatis plus.pdf

    该分页插件支持多种数据库,包括MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、PostgreSQL、SQLServer2005、SQLServer等。 内置性能分析插件可以输出SQL语句以及其执行时间,建议在开发和测试时启用该功能以快速...

    jbpm-jdpl框架简介.pdf

    会发现多个有用目录,如/config包含默认配置文件,/db包含针对不同数据库的初始化SQL脚本,/designer包含图形设计工具,/examples包含示例流程,/doc提供文档资料,/server包含预配置的JBoss服务器和控制台程序,/...

    dorado快速入门

    【DORADO5快速入门详解】 DORADO5是由BSTEK公司开发的一款先进的展现中间件技术,旨在利用其在J2EE领域的深厚积累和对AJAX技术的创新应用,引领用户进入WEB2.0的新纪元。作为EXTRA3和DORADO4之后的又一力作,DORADO...

    Hibernate文档

    Hibernate的核心功能在于将Java对象与数据库表之间的映射关系自动化,使得数据操作变得简单。在本教程中,首先会介绍如何创建一个基于命令行的简单应用程序,使用HSQL DB作为驻留内存数据库,无需额外安装数据库...

    Alfresco in an Hour.pdf

    两种版本都有Windows和Linux的安装程序,包含Alfresco、Tomcat、JDK(Java Development Kit)和数据库(默认为HSQL DB),以及可选的OpenOffice。 在启动和停止Alfresco时,对于自包含的安装程序,只需按照相应操作...

    mybatis_plus.docx

    5. **多数据库支持**:MP兼容MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、PostgreSQL、SQL Server等多种主流数据库。 6. **主键自动生成**:MP提供了四种主键策略,包括分布式唯一ID生成器(Sequence),可以...

Global site tag (gtag.js) - Google Analytics