java 代码
- 用了一下Hsqldb,感觉很精致。特别是Standalone Mode 就是单机板的数据库,集成到应用中很方便。
-
- 对比一下Hsqldb运行的方式:
-
- Memory-Only Databases 不做持久话,无密码,不允许远程访问。
- Hsqldb Server 做持久话 ,可以设置密码(设置密码修改test.script文件的user表中的值即可),允许远程访问。
- In-Process (Standalone) Mode 做持久话 ,可以设置密码(设置密码修改test.script文件的user表中的值即可),不允许远程访问,独占访问。
-
- public class HspldbConnection
- {
-
-
-
-
-
- public static void testMemoryOnly() throws SQLException, ClassNotFoundException{
- Class.forName("org.hsqldb.jdbcDriver");
- Connection c = DriverManager.getConnection("jdbc:hsqldb:mem:.", "sa", "");
- c.close();
- }
-
-
-
-
-
-
- public static void testServer() throws SQLException, ClassNotFoundException{
- Class.forName("org.hsqldb.jdbcDriver" );
- Connection c = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/","sa","");
- c.close();
- }
-
-
-
-
-
-
- public static void testStandalone() throws SQLException, ClassNotFoundException{
- Class.forName("org.hsqldb.jdbcDriver" );
- Connection c = DriverManager.getConnection("jdbc:hsqldb:file:data/test","sa","");
- c.close();
- }
- public static void main(String args[]) throws SQLException, ClassNotFoundException{
- testMemoryOnly();
- testServer();
- testStandalone();
- }
- }
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数据库下载,很好用,简易的内存数据库,特别适合初学者。
### HSQLDB快速连接数据库 #### 一、HSQLDB简介与特点 HSQLDB(HyperSQL Database)是一款优秀的轻量级开源纯Java SQL数据库...无论是初学者还是经验丰富的开发人员,都能够从HSQLDB及其详尽的中文文档中获益良多。
描述中的"一份中文使用说明"是为了帮助中国用户更好地理解和使用HSQldb,提供了详细的中文操作指南,这对于初学者来说是非常有帮助的。 HSQldb有两种主要的运行模式:内存模式和文件模式。在内存模式下,数据库完全...
《开源数据库软件HSQldb深度解析》 HSQldb,全称HyperSQL Database,是一款完全开源、免费...无论是初学者还是经验丰富的开发人员,都能从中找到适合自己的应用场景,并通过深入学习源码,提升自身的数据库技术能力。
通过这份文档,初学者可以快速上手HSQldb,而开发者则能了解如何在项目中有效地利用这个数据库系统。 在实际应用中,HSQldb常被用作嵌入式数据库,特别是在单机应用或者开发测试环境中,它提供了便捷的数据存储功能...
通过学习和理解这些文件,开发者可以快速上手使用HSQLDB和JDBC进行数据库操作,尤其对于初学者来说,这是一个很好的实践项目。在实际开发中,可以根据需求调整代码,比如增加事务处理、错误处理等高级功能。
hsqldb-2.5.0.zip是HSQDDL的一个版本,它包含了该数据库的完整功能,适用于初学者学习和实践。下面将对HSQDDL的核心特性、使用方法以及在Java开发中的应用进行详细介绍。 一、HSQDDL的核心特性 1. **内存模式与...
从给定的文件信息中,我们可以提取出关于HSQLDB的多个重要知识点,这些知识点涵盖了HSQLDB的基本介绍、运行模式、SQL...无论是对于初学者还是经验丰富的专业人士,HSQLDB都是一款值得深入研究和应用的数据库解决方案。
**Hsqldb1.8.0版** Hsqldb,全称HyperSQL Database,是一款开源、轻量级、完全Java语言编写的数据库管理系统。它支持嵌入式和服务器模式,适用于开发人员在Java应用程序中使用,尤其对于原型设计、测试和小型应用...
### HSQLDB快速上手实录 #### 一、引言 HSQLDB(HyperSQL Database)是一款基于Java编写的轻量级关系型数据库管理系统,它...希望本篇文章能够帮助初学者快速上手HSQLDB,并在实践中不断探索更多的功能和技术细节。
### HSQLDB用户指导学习手册知识点详述 #### 一、引言与文档格式 - **引言**:本手册旨在为用户提供一个全面且深入的学习资源,帮助他们掌握...无论是初学者还是有经验的开发者,都能从这本手册中获得有价值的信息。
《HSQldb 2.0.0:Java世界的轻量级数据库...无论是初学者还是经验丰富的开发者,都可以从HSQldb中受益,尤其是在需要快速搭建数据库环境或对性能要求不高的场景下。如果你是Java开发者,HSQldb值得你深入了解和尝试。
### HSQLDB 用户指南学习资料 #### HSQLDB —— 轻量级纯Java关系型数据库 **HSQLDB**(HyperSQL Database)是一种高性能...无论是初学者还是专业开发者,都可以从中受益,通过实践掌握HSQLDB的各项功能和技术细节。
### HSQLDB中文文档知识点概览 #### 一、HSQLDB概述 - **定义**:HSQLDB(HyperSQL Database)是一款轻量级、开源的纯Java SQL数据库管理系统,...无论是初学者还是经验丰富的开发者,都能从中找到所需的信息和支持。
《HSQDDL小型数据库详解与应用》 HSQDDL(HyperSQL Database)是一款轻量级、高性能的开源关系型数据库管理系统,通常简称为HSQDB。...无论是初学者还是经验丰富的开发人员,都能从中受益,实现更高效的工作流程。
而对于教学和学习SQL的初学者,HSQLDB Manager则提供了无需复杂配置即可实践SQL操作的平台。 总之,HSQLDB Manager是一个功能全面、易于使用的开源数据库管理工具,为HSQLDB数据库的使用者提供了极大的便利。通过源...
2. **示例应用**:可能包含一个简单的Java应用,演示如何连接并操作HSQLDB数据库,这对于初学者来说是非常有价值的。 3. **配置文件**:可能包含服务器配置文件,如hsqldb.properties,这些文件用于设置服务器端的...
9. **学习资源:** "Back_HSqlDB"项目可能包含了逐步指导,涵盖了从安装、配置到实际操作的全过程,对于初学者来说是非常宝贵的资源。 10. **实战应用:** 该教程或项目可能涵盖了如何在实际Java应用中使用HSQLDB,...
这可能意味着它使用了内存数据库,如HSQLDB或Derby,这些数据库可以直接在Java代码中启动和管理,无需单独安装和配置。这样的设计使得学习过程更加简单,因为开发者可以专注于JSP和Java逻辑,而不用过于关注数据库的...