`

hsqldb实例代码

阅读更多

package com.dmmap.adaptor.dao;

 

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.logging.Level;

import java.util.logging.Logger;

 

import org.hsqldb.server.Server;

 

 

/**

 * 便利单机法度应用HSQL的对象类,包含启动,封闭,连接。数据库默认不加密,用户为sa 密码空

 */

public class HsqlUtil {

 

    public static final int PORT = 9002;

    public static final String DB_NAME = "adaptor";       //数据库文件名,同时也是本类中的数据库名

    public static final String DB_PATH = "./WebContent/database/";

    public static final String USER_NAME = "sa";

    public static final String PASSWORD = "";

    public static final int SERVER_MODE = 0;

    public static final int STAND_ALONE_MODE = 1;   //In-Process

    public static int mode = SERVER_MODE;          //记录当前用什么模式,开辟时用Server,公布时用standalone

 

    /**

     * 启动数据库办事

     */

    public static boolean startHSQL() {

        if (mode == SERVER_MODE) {

            Server server = new Server();//它可是hsqldb.jar里面的类啊。

            server.setDatabaseName(0, DB_NAME);

            server.setDatabasePath(0, DB_PATH + DB_NAME);

            server.setPort(PORT);

            server.setSilent(true);

            server.start();         //主动多线程运行

            System.out.println("hsqldb started...");

        } else if (mode == STAND_ALONE_MODE) {

            //standalone模式,打开连接就同时启动数据库,所以这里可以什么都不做

        }

 

        try {

            Thread.sleep(800);        // 守候Server启动

        } catch (InterruptedException e) {

        }

        return true;

    }

 

    /**

     * 封闭数据库办事

     */

    public static boolean stopHSQL() {

        try {

            Statement statement = getConnection().createStatement();

            statement.executeUpdate("SHUTDOWN;");

            return true;

        } catch (SQLException ex) {

            Logger.getLogger(HsqlUtil.class.getName()).log(Level.SEVERE, null, ex);

            return false;

        }

    }

 

    /**

     * 获取连接

     */

    public static Connection getConnection() {

        Connection conn = null;

        try {

            Class.forName("org.hsqldb.jdbcDriver");

            if (mode == SERVER_MODE) {

                conn = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost:" + PORT + "/" + DB_NAME, USER_NAME, PASSWORD);

            } else if (mode == STAND_ALONE_MODE) {

                conn = DriverManager.getConnection("jdbc:hsqldb:file:" + DB_PATH + DB_NAME, USER_NAME, PASSWORD);

                System.out.println(DB_PATH+DB_NAME);

            }

        } catch (ClassNotFoundException ex) {

            Logger.getLogger(HsqlUtil.class.getName()).log(Level.SEVERE, null, ex);

        } catch (SQLException ex) {

            Logger.getLogger(HsqlUtil.class.getName()).log(Level.SEVERE, null, ex);

        }

        return conn;

    }

}

 

 

//public static List<SMS> getSMS()

//{

// List<SMS> list=new ArrayList<SMS>();

// HsqlUtil.mode = HsqlUtil.STAND_ALONE_MODE;

//    HsqlUtil.startHSQL();

//    Connection conn = HsqlUtil.getConnection();

//    try {

//     Statement statement =conn.createStatement();

//        ResultSet rs=statement.executeQuery("select * from record");

//        while(rs.next())

//        {

//         SMS sms=new SMS();

//         sms.setId(rs.getString(1));

//         sms.setMobliePhone(rs.getString(2));

//         sms.setContnet(rs.getString(3));

//         sms.setTime(rs.getString(4));

//         list.add(sms);

//        }

//        statement.close();

//    } catch (SQLException ex) {

//        Logger.getLogger(HsqlUtil.class.getName()).log(Level.SEVERE, null, ex);

//    }

//    HsqlUtil.stopHSQL();

// return list;

//}

 

//public static void initDB()

//{

// HsqlUtil.mode = HsqlUtil.STAND_ALONE_MODE;

//    HsqlUtil.startHSQL();

//    Connection conn = HsqlUtil.getConnection();

//    try {

//        Statement statement =conn.createStatement();

//        statement.executeUpdate("create table record(id varchar(64) not null primary key ," +

//         "mobliePhone varchar(20),contnet varchar(20),time varchar(20))");

//        statement.close();

//    } catch (SQLException ex) {

//        Logger.getLogger(HsqlUtil.class.getName()).log(Level.SEVERE, null, ex);

//    }

//    HsqlUtil.stopHSQL();

//}

 

//public static void dropDB()

//{

// HsqlUtil.mode = HsqlUtil.STAND_ALONE_MODE;

//    HsqlUtil.startHSQL();

//    Connection conn = HsqlUtil.getConnection();

//    try {

//        Statement statement =conn.createStatement();

//        statement.executeUpdate("drop table record");

//        statement.close();

//    } catch (SQLException ex) {

//        Logger.getLogger(HsqlUtil.class.getName()).log(Level.SEVERE, null, ex);

//    }

//    HsqlUtil.stopHSQL();

//}


分享到:
评论

相关推荐

    hsqldb实例源代码

    总结来说,HSQldb实例源代码为我们提供了学习和实践HSQldb数据库操作的实例,涵盖了数据库的创建、数据操作以及查询等核心功能。通过研究这些代码,开发者可以快速掌握HSQldb的使用,并将其应用于自己的项目中,无论...

    HSQLDB中文帮助文档

    - **获取方式**:通过官方网站可以下载到HSQLDB的发布包、源代码以及相关文档。 - **安装步骤**:无需复杂安装,只需将HSQLDB包解压至所需的目录即可使用。 #### 三、HSQLDB的运行与使用 - **运行工具**:包括...

    Hsqldb的缓存分析及调试步骤

    **启动服务**:通过Java程序启动HSQLDB服务器,这通常涉及创建Server类的实例并调用start方法。 2. **打开数据库**:通过DatabaseManager类的openDatabase方法连接到数据库。这个过程会加载数据库的元数据,并初始...

    hsqldb整合hibernate

    本项目是基于Myeclipse 6.5开发的一个实例,它展示了如何将HSQldb与Hibernate整合,以便在内存中进行快速、便捷的数据操作。下面将详细解析这一整合过程的关键步骤和知识点。 ### 1. 设置环境 首先,你需要在项目...

    HSQLDB 中文文档

    可以从HSQLDB官方网站(http://hsqldb.sourceforge.net)下载最新版本的发布包、源代码和文档。 - **步骤**: - 下载`hsqldb.jar`文件。 - 将文件放置在项目的类路径中。 ##### 3.2 启动 HSQLDB支持多种运行...

    Oracle数据库移植到HsqlDB操作手册.docx

    Oracle数据库移植到HsqlDB是一项涉及多个步骤的技术工作,主要涉及到数据库系统间的差异处理、数据迁移、代码适配以及应用程序的调整。以下是整个过程的关键知识点: 1. **数据库系统差异**: - **启动与操作**:...

    java上万个实例源代码例子 链接搜集

    根据提供的标题、描述以及部分内容,我们可以总结出一系列与Java编程语言相关的知识点,特别是与实例源代码及Hibernate框架有关的部分。接下来将对这些知识点进行详细解释。 ### 一、Java实例源代码 #### 1. Java...

    《java 数据库编程实例》 源代码

    开发者通常需要一个数据库服务器(如MySQL或HSQLDB)来运行这些脚本,以便在实际环境中运行代码。 此外,书中可能涉及了事务处理、连接池管理(如C3P0或HikariCP)、数据持久化框架(如Hibernate或JPA),以及错误...

    HSQLDB Manager-开源

    用户可以根据自己的HSQLDB实例设置这些属性,以便HSQLDB Manager能够正确连接到相应的数据库。 2. `HSQLDBManager_SRC.zip`: 这个文件包含HSQLDB Manager的源代码,对于开发者来说非常有价值。他们可以查看、学习或...

    spring+hibernate代码实例集

    总结,这个"spring+hibernate代码实例集"涵盖了Spring和Hibernate的集成应用,包括关系映射、事务管理和延迟加载等核心概念。通过实际的代码示例,开发者可以深入理解并掌握这些技术,提升Java后端开发的能力。

    SpringBoot集成MyBatis的分页插件PageHelper实例代码

    SpringBoot 集成 MyBatis 的分页插件 PageHelper 实例代码 本文主要介绍了 SpringBoot 集成 MyBatis 的分页插件 PageHelper 的相关操作,涵盖了 PageHelper 的基本概念、使用步骤、集成 MyBatis 的分页插件 ...

    spring 经典实例

    在Spring MVC中,开发者可以将业务逻辑、数据访问和用户界面分离开来,使代码更易于维护和测试。 Struts MVC则是Apache基金会的一个开源项目,它基于MVC设计模式,提供了一种组织Java Web应用程序的方式。Struts ...

    HSQL数据库下载

    为了开始使用HSQLDB,你需要通过JDBC连接到数据库,创建数据库实例,然后执行SQL语句进行数据操作。例如,可以使用以下Java代码创建一个新的数据库: ```java Class.forName("org.hsqldb.jdbc.JDBCDriver"); ...

    hsqldb-example:在内存中使用数据库,hsqldb的用法

    在单元测试中,可以在每个测试方法开始时创建一个新的数据库实例,测试结束后销毁,确保测试的隔离性。 **总结** HSQldb作为一款轻量级的Java数据库,提供了在内存中运行的强大功能,尤其适用于快速开发、测试和...

    Eclipse Web开发从入门到精通(实例版)

    通过开发一个学生成绩管理系统,详细讲解了如何使用HSQLDB数据库、SQLExplorer插件、JavaBean以及DAO设计模式来实现数据的增删查改。这一章节不仅教授了数据库开发的基础知识,还引导读者掌握了面向对象的设计原则,...

    Java编写的关系数据库:hsqldb_1.7.3

    2. **启动数据库**: 使用`org.hsqldb.Server`类启动HSQDB服务器,或者在Java代码中直接创建`org.hsqldb.jdbc.JDBCConnection`实例。 3. **创建数据库**: 通过SQL语句`CREATE DATABASE`来创建新的数据库。 4. **...

    hsqldb_1_8_1_3jar包文件

    1. **创建数据库**:通过Java代码或命令行工具`sqltool`创建数据库实例。 2. **设置数据库连接**:使用JDBC URL,例如`jdbc:hsqldb:file:/path/to/your/database`,并提供用户名和密码。 3. **启动数据库服务**:...

    testinghsqldb:用于实现 HSQLdb 以便为 JUnit 测试提供内存数据的小应用程序

    1. **设置HSQLDB**:安装HSQLDB库,并配置JUnit测试以连接到内存中的数据库实例。 2. **初始化数据库**:在测试前,可能需要创建表和填充测试数据,这可以通过SQL语句或者使用HSQLDB提供的API来完成。 3. **运行测试...

Global site tag (gtag.js) - Google Analytics