h2数据库连接mysql_H2数据库简单使用操作「建议收藏」

h2数据库连接mysql_H2数据库简单使用操作「建议收藏」h2database官网下载客户端控制台h2databaseMaven配置com.h2databaseh21.4.1991控制台新建数据库与连接数据库1.1建库windows系统下点击h2/bin/h2.bat启动控制台应用程序鼠标右键点击桌面右下角图标Createanewdatabase…例如在k盘h2目录下新建helloForm数据库,则填写路径为k:/h2/helloForm…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

h2database官网

下载客户端控制台

216676a328345a50fc406a2e82710db2.png

h2database Maven配置

com.h2database

h2

1.4.199

1 控制台新建数据库与连接数据库

1.1建库

windows系统下点击h2/bin/h2.bat启动控制台应用程序

c1a4cc0eb212699f38d2465ad7811148.png

鼠标右键点击桌面右下角图标 Create a new database…

59a2ddce4e8266655e9bb639beb2f0ec.png

例如在k盘h2目录下新建helloForm数据库,则填写路径为k:/h2/helloForm

932c00138544041c0cc6071db1c52dd8.png

1.2控制台连接数据库

开打控制台,点击H2 Console

6ac800ecb1de5b4bf75998a59995827c.png

driver class 与 jdbc url 有多种填写方式,详情参考官网说明文档

在这里使用 org.h2.Driver 驱动

jdbc url填写为 jdbc:h2:tcp://localhost/k:/h2/helloForm;database_to_upper=false

其中tcp://localhost/表示使用TCP / IP的服务器模式(远程连接),该方式允许有多个客户端同时连接一个数据库

后缀;database_to_upper=false表示取消默认的自动转换成大写。在建表时字段可以区分大小写,在查询数据时,也应该严格区分表名,与字段的大小写

e666f577366bf77b92e82a35c7438fc0.png

成功进入浏览器控制台

b8baec3e6878f0843b75b641a68f6544.png

2 基本使用代码

package com.h2;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.Statement;

/**

* @Description: H2内嵌数据库的基本使用

* @author: haidnor

*/

public class H2Test {

/**

* 以嵌入式(本地)连接方式连接H2数据库

*/

private static final String JDBC_URL = “jdbc:h2:K:/Java/H2Test/user”;

/**

* 使用TCP/IP的服务器模式(远程连接)方式连接H2数据库(推荐)

*/

// private static final String JDBC_URL = “jdbc:h2:tcp://10.35.14.122/C:/H2/user”;

// 数据库管理员用户名,用户名不区分大小写

private static final String USER = “root”;

// 数据库管理员用户名

private static final String PASSWORD = “root”;

//数据库驱动

private static final String DRIVER_CLASS = “org.h2.Driver”;

public static void main(String[] args) throws Exception {

// TODO Auto-generated method stub

Class.forName(DRIVER_CLASS);

// 数据库连接,如果目录下没有指定数据库,会自动生成

Connection conn = DriverManager.getConnection(JDBC_URL, USER, PASSWORD);

// 获取数据库操作对象statement

Statement statement = conn.createStatement();

// 建库

statement.execute(“DROP TABLE IF EXISTS USER_INF”);

// 建表

statement.execute(“CREATE TABLE USER_INF(id INTEGER PRIMARY KEY, name VARCHAR(100), sex VARCHAR(2))”);

// 插入数据操作

statement.executeUpdate(“INSERT INTO USER_INF VALUES(1, ‘tom’, ‘男’) “);

statement.executeUpdate(“INSERT INTO USER_INF VALUES(2, ‘jack’, ‘女’) “);

statement.executeUpdate(“INSERT INTO USER_INF VALUES(3, ‘marry’, ‘男’) “);

statement.executeUpdate(“INSERT INTO USER_INF VALUES(4, ‘lucy’, ‘男’) “);

// 查询数据

ResultSet resultSet = statement.executeQuery(“select * from USER_INF”);

// 遍历打印数据

while (resultSet.next()) {

System.out.println(

resultSet.getInt(“id”) + “, “

+ resultSet.getString(“name”) + “, “

+ resultSet.getString(“sex”));

}

// 关闭数据库连接

statement.close();

conn.close();

}

}

H2数据库连接池的基本使用

package com.h2;

import org.h2.jdbcx.JdbcConnectionPool;

import java.sql.*;

/**

* @Description: H2数据库连接池的基本使用

* @author Haidnor

* @creat 2019-12-23-11:15

*/

public class H2PoolTest {

private static final String JDBC_URL = “jdbc:h2:tcp://localhost/K:/Java/H2Test/user”;

// 数据库管理员用户名,用户名不区分大小写

private static final String USER = “root”;

// 数据库管理员用户名

private static final String PASSWORD = “root”;

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

// JDBC连接池

JdbcConnectionPool pool = JdbcConnectionPool.create(JDBC_URL, USER, PASSWORD);

// 建立连接超时时间

pool.setLoginTimeout(10000);

// 建立连接最大个数

pool.setMaxConnections(100);

Connection conn = pool.getConnection();

// 获取数据库操作对象statement

Statement statement = conn.createStatement();

// 查询数据

ResultSet resultSet = statement.executeQuery(“select * from USER_INF”);

// 遍历打印数据

while (resultSet.next()) {

System.out.println(

resultSet.getInt(“id”) + “, “

+ resultSet.getString(“name”) + “, “

+ resultSet.getString(“sex”));

}

// 释放资源

statement.close();

// 关闭连接

conn.close();

}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183838.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月31日 下午12:46
下一篇 2022年8月31日 下午1:00


相关推荐

  • 【3Dtiles】3Dmax模型处理为gltf和3dtiles,包含LOD效果

    【3Dtiles】3Dmax模型处理为gltf和3dtiles,包含LOD效果3dmax 模型处理为 3dtiles

    2026年3月19日
    2
  • git提交规范说明

    git提交规范说明在使用 GIT 操作的时候 我们最好在一开始就养成一个良好的提交说明规范 这和我们初学编程时候使用的注释是同样的道理 能够让我们提交的更改更加清晰易理解 特别是在多人合作的情况下 如果没有一个好的提交规范 那很难让别人看懂自己更改了什么地方一 提交格式 type scope message 二 参数介绍 1 type 指的代码的提交类型 不同的提交类型表示对应不同的代码改动 比如 feat 新功能的开发 fix bug 的修复 docs 文档格式的改动 style 代码格式改变 refactor 对已

    2026年3月18日
    2
  • bwapp xss stored_babassl

    bwapp xss stored_babassl0x01、XSS-Reflected(GET)Low输入的内容直接输出到页面中:后台服务端没有对输入的参数进行过滤,直接任选一个注入xsspayload即可:<script>alert(1)</script>Medium虽然服务端进行了过滤,但只是addslashes()函数而已(防sql注入),依旧可以xss:…

    2026年2月24日
    5
  • 带通滤波器原理及其作用_带通滤波器的设计

    带通滤波器原理及其作用_带通滤波器的设计一个带通滤波器是一个只有在特定频段的频率传递信号衰减这一频段以外的所有信号的同时,其目的是的电路。在一个带通滤波器的重要参数,高,低截止频率(FH和f升),带宽(BW),中心频率fC,中心频率增益,选择性或Q基本上有两个带通滤波器,即广通带和窄的带通滤波器的类型号不幸的是,两者之间的分线没有设置。然而,一个带通滤波器的定义是很宽的带通图的优点或品质因数Q值小于10,而与Q带通滤波器&g…

    2025年9月20日
    7
  • 失去焦点和获得焦点发生事件(js)

    失去焦点和获得焦点发生事件(js)失去焦点:onblur=”hanshu(this)”获得焦点:onfocus=”hanshu(this)”{     alert(‘请确认您输入格式是否正确!’);   }//函数名:chksafe//功能介绍:检查是否含有,//,///参数说明:要检查的字符串//返回值:0:是 1:不是functionchksafe(a)

    2022年6月30日
    36
  • jvm内存泄漏

    jvm内存泄漏内存泄漏和内存溢出的关系内存泄露:指程序中动态分配内存给一些临时对象,但是对象不会被GC所回收,它始终占用内存。即被分配的对象可达但已无用。内存溢出:指程序运行过程中无法申请到足够的内存而导致的一种错误。内存溢出通常发生于OLD段或Perm段垃圾回收后,仍然无内存空间容纳新的Java对象的情况。从定义上可以看出内存泄露是内存溢出的一种诱因,但是不是唯一因素。可以使用Runtime.ge…

    2022年5月6日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号