专栏首页架构师小跟班Java开发环境系列:H2内嵌式数据库使用教程

Java开发环境系列:H2内嵌式数据库使用教程

H2数据库是一个开源的,使用java开发的内嵌式数据库。使用者不需要像Oracle、MySQL等数据库一样动则安装几百兆甚至几G的安装程序。以下使用步骤以统一门户系统为例。

1、找到h2数据库的jar包

在项目中引入h2的jar包,比如: D:\repositories\com\h2database\h2\1.4.187\h2-1.4.187.jar

2、双击jar包,配置连接信息

Driver Class:org.h2.Driver

JDBC URL:jdbc:h2:file:~/.h2/sample;AUTO_SERVER=TRUE;DB_CLOSE_DELAY=-1(与application.properties相同,但掉"log4jdbc:")

3、点击连接,在T_USER表中插入一条数据

insert into t_user (ID, EMAIL, NAME, PASSWORD, ROLE, SALT, SEX)

values ('fbe00c9e-97b0-49f9-9f3d-3431050dec74', 'xy.hero@qq.com', 'admin', '4c1e9c2a03a6f49db3bde4699fcb98fe5f1203b8', 'admin', '9c14b4497360e049', '1');

新建h2数据库

指定JDBC URL:jdbc:h2:E://research//workspace//H2Test//db//test,点击connect,会看到e盘多出一个文件夹research

执行test语句,创建test表

测试类

package cn.itcast.test;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

/**

* H2测试类

* @author wangxiangyu

*/

public class TestH2 {

public static void main(String[] args) throws ClassNotFoundException, SQLException{

Class.forName("org.h2.Driver");

Connection conn = DriverManager.getConnection("jdbc:h2:E://research//workspace//H2Test//db//test", "sa", "");

Statement stmt = conn.createStatement();

ResultSet rs = stmt.executeQuery("select * from test");

while(rs.next()){

System.out.println(rs.getInt("ID")+","+rs.getString("NAME"));

}

conn.close();

}

}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Java开发环境系列:Oracle连接工具plsql developer使用方法

    这里省略Oracle数据库和PL/SQL Developer的安装步骤,注意在安装PL/SQL Developer软件时,不要安装在Program Files ...

    架构师小跟班
  • Java开发环境系列:全文搜索引擎elasticsearch(ik分词器)

    安装中文分词插件,在elasticsearch-6.2.2\bin目录下执行以下命令: 

    架构师小跟班
  • 完整Demo:springboot实现多数据源配置

    公司有一套人脸识别动态布控系统,该系统有两个子系统组成,识别算法采用C++编写,后台管理系统采用Java编写,C程序提供HTTP接口供Java程序调用,两个程序...

    架构师小跟班
  • 机器学习(十二)交叉验证实例

    假设有个未知模型具有一个或多个待定的参数,且有一个数据集能够反映该模型的特征属性(训练集)。

    致Great
  • 使用Keras实现简单线性回归模型操作

    神经网络可以用来模拟回归问题 (regression),实质上是单输入单输出神经网络模型,例如给下面一组数据,用一条线来对数据进行拟合,并可以预测新输入 x 的...

    砸漏
  • Android VSYNC与图形系统中的撕裂、双缓冲、三缓冲浅析

    先接触两个图形概念: 帧率(Frame Rate,单位FPS)--GPU显卡生成帧的速率,也可以认为是数据处理的速度), 屏幕刷新频率 (Refresh Rat...

    看书的小蜗牛
  • Django 学习笔记 1.3 视图和模板

    前一节是后端的内容,这一节则是前端的内容,我们将继续编写投票应用,并且专注于如何创建公用界面——也被称为“视图”。

    twowinter
  • JQuery选择器

    用户3159471
  • 我碰到的那些面试题js及es6(1)

    es6是一个新的标准,它包含了许多新的语言特性和库,是JS最实质性的一次升级。比如箭头函数、字符串模板、generators(生成器)、async/await、...

    李才哥
  • [Vue 牛刀小试]:第九章 - 组件基础再探(data、props)

      在上一章的学习中,我们学习了 Vue 中组件的基础知识,知道了什么是组件,以及如何创建一个全局/局部组件。不知道你是否记得,在上一章中,我们提到组件是一个可...

    程序员宇说

扫码关注云+社区

领取腾讯云代金券