`
jiasudu1649
  • 浏览: 723512 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hsqldb初学

阅读更多
java 代码
 
  1. 用了一下Hsqldb,感觉很精致。特别是Standalone Mode 就是单机板的数据库,集成到应用中很方便。  
  2.   
  3. 对比一下Hsqldb运行的方式:  
  4.   
  5. Memory-Only Databases 不做持久话,无密码,不允许远程访问。  
  6. Hsqldb Server 做持久话 ,可以设置密码(设置密码修改test.script文件的user表中的值即可),允许远程访问。  
  7. In-Process (Standalone) Mode  做持久话 ,可以设置密码(设置密码修改test.script文件的user表中的值即可),不允许远程访问,独占访问。  
  8.   
  9. public class HspldbConnection  
  10. {  
  11.     /** 
  12.      * 运行前要启动服务器,Memory-Only 
  13.      * @throws SQLException 
  14.      * @throws ClassNotFoundException 
  15.      */  
  16.     public static void testMemoryOnly() throws SQLException, ClassNotFoundException{  
  17.         Class.forName("org.hsqldb.jdbcDriver");  
  18.         Connection c = DriverManager.getConnection("jdbc:hsqldb:mem:.""sa""");  
  19.         c.close();  
  20.     }  
  21.   
  22.    /** 
  23.     * 运行前要启动服务器,Hsqldb Server 
  24.     * @throws SQLException 
  25.     * @throws ClassNotFoundException 
  26.     */  
  27.     public static void testServer() throws SQLException, ClassNotFoundException{  
  28.             Class.forName("org.hsqldb.jdbcDriver" );  
  29.             Connection c = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/","sa","");  
  30.             c.close();  
  31.     }  
  32.   
  33.     /** 
  34.      * 运行前不用要启动服务器,获得数据库链接及启动了服务器。 
  35.      * @throws SQLException 
  36.      * @throws ClassNotFoundException 
  37.      */  
  38.     public static void testStandalone() throws SQLException, ClassNotFoundException{  
  39.         Class.forName("org.hsqldb.jdbcDriver" );  
  40.         Connection c = DriverManager.getConnection("jdbc:hsqldb:file:data/test","sa","");  
  41.         c.close();  
  42.     }  
  43.     public static void main(String args[]) throws SQLException, ClassNotFoundException{  
  44.         testMemoryOnly();  
  45.         testServer();  
  46.         testStandalone();  
  47.     }  
  48. }  


1.介绍

     选用HSQLDB(http://www.hsqldb.org/) 因为

     支持嵌套查询在内的绝大部分SQL标准;

     支持Indentity主键;

     支持分页:SELECT TOP 5 FROM .., SELECT LIMIT 0 10 FROM ...;

     体积小,速度快,无需用户安装的嵌入式数据库方便DEMO;

     数据库文件为直接的script文件便于管理,能够编码控制开停。

2.三种模式

2.1 Server模式

      最常用的模式,双击/misc/db/server.bat打开服务

"%JAVA_HOME%/bin/java" -classpath hsqldb.jar org.hsqldb.Server -database.0 bookstore -dbname.0 bookstore

    根据server.properties的内容,server.port=9002 (因为有些项目也使用hsqldb,默认端口为9001,因此springside改为使用9002端口。) 

    按照命令行参数 -database.0 bookstore,将执行同名的bookstore.script初始化数据库

    连接URL为: 

  jdbc:hsqldb:hsql://localhost:9002/bookstore

  如有多个数据库,则继续写命令行参数-database.1,-dbname.1

   在springsdie的server.bat 中,HSQLDB的实际运行目录被定位到 %HOME%/springside/db/, 如 C:/Document and Setting/Administrator/springside/db/

2.2 In-Process模式

   In-Process 进程内模式因为不用网络连接,可以获得更高的速度。而且不需要用户手工启动数据库。

   缺点是不可以用DB 工具 察看数据库的当前情况。

   因此开发时还是推荐使用Server模式。

   In-Process的使用方式是不用起服务,直接用JDBC Driver连接URL:

jdbc:hsqldb:file:bookstore

  如果db file不在当前目录,可以写为

jdbc:hsqldb:file:/opt/db/testdb

2.3 内存中数据库

   该模式既不会读取script文件初始化数据库,一切改动也不会存盘。

3.数据查询与管理工具

  双击manager.bat,可进行管理。 jdbc连接路径见上,默认用户名sa, 密码为空。

  也可以使用其他任意的基于JDBC的数据库管理工具。

4.Server模式随WebApp一起启动

      已实现相关listener,见web.xml 和 /src/main/org/springside/bookstore/web/HsqlListener.java。

5.数据文件与数据存盘

    HSQLDB的数据文件为一个文本的sql文件,非常方便直接操控。

    如果要数据库彻底存盘到script文件,执行sql 命令 ShutDown。

    为了避免大家的数据文件相互冲突, springside项目里的booksotre.script, bookstore.properties文件并不保存在cvs中。

    取而代之保存在cvs中的是/resources/default-data.script和/resources/default-db.properties文件。

    在server.bat中,如果发现目录里没有bookstore.script文件,就会把default-data.script 复制为 bookstore.script。 



http://yangwei.iteye.com/blog/80914
http://tb.blog.csdn.net/TrackBack.aspx?PostId=920151
分享到:
评论

相关推荐

    hsqldb-2.5.0.jar

    hsqldb数据库下载,很好用,简易的内存数据库,特别适合初学者。

    HSQLDB快速连接数据库

    ### HSQLDB快速连接数据库 #### 一、HSQLDB简介与特点 HSQLDB(HyperSQL Database)是一款优秀的轻量级开源纯Java SQL数据库...无论是初学者还是经验丰富的开发人员,都能够从HSQLDB及其详尽的中文文档中获益良多。

    hsqldb包和使用说明

    描述中的"一份中文使用说明"是为了帮助中国用户更好地理解和使用HSQldb,提供了详细的中文操作指南,这对于初学者来说是非常有帮助的。 HSQldb有两种主要的运行模式:内存模式和文件模式。在内存模式下,数据库完全...

    开源数据库软件hsqldb

    《开源数据库软件HSQldb深度解析》 HSQldb,全称HyperSQL Database,是一款完全开源、免费...无论是初学者还是经验丰富的开发人员,都能从中找到适合自己的应用场景,并通过深入学习源码,提升自身的数据库技术能力。

    hsqldb相关几个文件

    通过这份文档,初学者可以快速上手HSQldb,而开发者则能了解如何在项目中有效地利用这个数据库系统。 在实际应用中,HSQldb常被用作嵌入式数据库,特别是在单机应用或者开发测试环境中,它提供了便捷的数据存储功能...

    JDBC-HSQLDB.rar_hsqldb

    通过学习和理解这些文件,开发者可以快速上手使用HSQLDB和JDBC进行数据库操作,尤其对于初学者来说,这是一个很好的实践项目。在实际开发中,可以根据需求调整代码,比如增加事务处理、错误处理等高级功能。

    hsqldb-2.5.0.zip

    hsqldb-2.5.0.zip是HSQDDL的一个版本,它包含了该数据库的完整功能,适用于初学者学习和实践。下面将对HSQDDL的核心特性、使用方法以及在Java开发中的应用进行详细介绍。 一、HSQDDL的核心特性 1. **内存模式与...

    HSQLDB 中文文档

    从给定的文件信息中,我们可以提取出关于HSQLDB的多个重要知识点,这些知识点涵盖了HSQLDB的基本介绍、运行模式、SQL...无论是对于初学者还是经验丰富的专业人士,HSQLDB都是一款值得深入研究和应用的数据库解决方案。

    Hsqldb1.8.0版

    **Hsqldb1.8.0版** Hsqldb,全称HyperSQL Database,是一款开源、轻量级、完全Java语言编写的数据库管理系统。它支持嵌入式和服务器模式,适用于开发人员在Java应用程序中使用,尤其对于原型设计、测试和小型应用...

    HSQLDB快速上手实录

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

    HSQLDB用户指导学习手册

    ### HSQLDB用户指导学习手册知识点详述 #### 一、引言与文档格式 - **引言**:本手册旨在为用户提供一个全面且深入的学习资源,帮助他们掌握...无论是初学者还是有经验的开发者,都能从这本手册中获得有价值的信息。

    hsqldb-2.0.0

    《HSQldb 2.0.0:Java世界的轻量级数据库...无论是初学者还是经验丰富的开发者,都可以从HSQldb中受益,尤其是在需要快速搭建数据库环境或对性能要求不高的场景下。如果你是Java开发者,HSQldb值得你深入了解和尝试。

    HSQLDB 用户指南学习资料

    ### HSQLDB 用户指南学习资料 #### HSQLDB —— 轻量级纯Java关系型数据库 **HSQLDB**(HyperSQL Database)是一种高性能...无论是初学者还是专业开发者,都可以从中受益,通过实践掌握HSQLDB的各项功能和技术细节。

    HSQLDB中文文档

    ### HSQLDB中文文档知识点概览 #### 一、HSQLDB概述 - **定义**:HSQLDB(HyperSQL Database)是一款轻量级、开源的纯Java SQL数据库管理系统,...无论是初学者还是经验丰富的开发者,都能从中找到所需的信息和支持。

    hsqldb小型数据库

    《HSQDDL小型数据库详解与应用》 HSQDDL(HyperSQL Database)是一款轻量级、高性能的开源关系型数据库管理系统,通常简称为HSQDB。...无论是初学者还是经验丰富的开发人员,都能从中受益,实现更高效的工作流程。

    HSQLDB Manager-开源

    而对于教学和学习SQL的初学者,HSQLDB Manager则提供了无需复杂配置即可实践SQL操作的平台。 总之,HSQLDB Manager是一个功能全面、易于使用的开源数据库管理工具,为HSQLDB数据库的使用者提供了极大的便利。通过源...

    example-db-for-hsqldb:HSQLDB 的示例数据库

    2. **示例应用**:可能包含一个简单的Java应用,演示如何连接并操作HSQLDB数据库,这对于初学者来说是非常有价值的。 3. **配置文件**:可能包含服务器配置文件,如hsqldb.properties,这些文件用于设置服务器端的...

    Back_HSqlDB:java 内置数据库

    9. **学习资源:** "Back_HSqlDB"项目可能包含了逐步指导,涵盖了从安装、配置到实际操作的全过程,对于初学者来说是非常宝贵的资源。 10. **实战应用:** 该教程或项目可能涵盖了如何在实际Java应用中使用HSQLDB,...

    JSP初学非常实用的例子,完整的jsp项目:完整系统结构,具有登陆、注册、数据库的增、删,并且采用过滤器

    这可能意味着它使用了内存数据库,如HSQLDB或Derby,这些数据库可以直接在Java代码中启动和管理,无需单独安装和配置。这样的设计使得学习过程更加简单,因为开发者可以专注于JSP和Java逻辑,而不用过于关注数据库的...

Global site tag (gtag.js) - Google Analytics