2018-07-25 HSQLDB内存数据库使用

hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议,如果你是使用Java编程的话,可以考虑一下使用它,相对其他数据库来说,其体积小,才563kb。
仅一个hsqldb.jar文件就包括了数据库引擎,数据库驱动, 还有其他用户界面操作等内容(不需要安装只需一个jar)

HSQLDB的几种运行模式。

●独立服务器模式:类似于其他关系数据库的标准客户机/服务器数据库配置,允许出现使用TCP 套接字的并发连接。

● 独立Web服务器模式:作为Web服务器通过HTTP接受SQL查询,也能作为任何标准Web容器中的Servlet来运行。由于HTTP是无状态的,所以本模式中不存在事务。

● 单机模式:是许多嵌入式应用程序的首选模式,该模式下应用程序使用JDBC创建一个数据库连接,HSQLDB引擎也运行在该应用程序中。

● Memory模式:所有数据库表和索引都放在内存中,数据不进行外存储,没有持
久性。

下面将以Memory模式为例,介绍如何基于HSQLDB数据库进行应用的开发。

(1)启动Eclipse,创建名字为hsqldbdemo的Java工程,并创建Java类MemoryDB.java。
注意:切记将hsqldb.jar加到工程的构建路径上。
(2)编辑MemoryDB.java文件。输入如下代码:

public static void main(String[] args) {
        try {
            // 加载HSQL DB的JDBC驱动
            Class.forName("org.hsqldb.jdbcDriver");
            // 在内存中建立数据库db,用户名为sa,密码为空
//          Connection conn = DriverManager.getConnection("jdbc:hsqldb:mem:score", "sa", "");
//          Connection conn = DriverManager.getConnection("jdbc:hsqldb:db", "sa", "");
            Connection conn = DriverManager.getConnection("jdbc:hsqldb:.", "sa", "");
            Statement stat = conn.createStatement();
            
            // 新建数据表
            stat.executeUpdate("create table temp(id integer, value VARCHAR(250) )");

            // 插入数据
            String sql = "INSERT INTO temp VALUES(1,'value')";
            stat.executeUpdate(sql);
            System.out.println("数据插入成功!");
            // 查询数据
            PreparedStatement pstmt = conn
                    .prepareStatement("SELECT * FROM temp");
            ResultSet rs = pstmt.executeQuery();
            while (rs.next()) {
                String s = null;
                s = rs.getString(1) + " : " + rs.getString(2);
                System.out.println("查询结果为:" + s);
            }
            
        } catch(Exception e) {
            e.printStackTrace();
        }
    }

运行结果:

数据插入成功!
查询结果为:1 : value

通过上边代码演示, 会发现使用HSQLDB能够很方便的使用内存数据库。可以在实际开发中将一些常量数据,频繁使用的数据插入到内存数据库中,可以方便快捷查找使用。

你可能感兴趣的:(2018-07-25 HSQLDB内存数据库使用)