带你了解内嵌数据库H2

简介: 对于后端开发来说,在开发过程中,我们基本时时都在与数据库打交道。我们一般使用的数据库都有MySQL、SQL Server、DB2,以及NO SQL里的Redis和MongoDB,还是就是现在的流行的云数据库,而其中使用频率高的应该是MySql,这些数据库有什么特点呢,除了云数据库你都得安装,而今天要说的数据库是H2不需要那么复杂,不需要安装,但是其作为内嵌数据库,数据其实是保存在内存里的,重启后数据就没了,适用于初学者学习和一些特殊场景使用。

微信截图_20220531145505.png

前言


对于后端开发来说,在开发过程中,我们基本时时都在与数据库打交道。我们一般使用的数据库都有MySQL、SQL Server、DB2,以及NO SQL里的Redis和MongoDB,还是就是现在的流行的云数据库,而其中使用频率高的应该是MySql,这些数据库有什么特点呢,除了云数据库你都得安装,而今天要说的数据库是H2不需要那么复杂,不需要安装,但是其作为内嵌数据库,数据其实是保存在内存里的,重启后数据就没了,适用于初学者学习和一些特殊场景使用。


下图是H2与其他数据库的对比,可以看到其只有1M,是真的短小精悍微信截图_20220531145534.png

接下来我们看看如何使用H2


一.Spring boot 集成H2


1.引入H2,这里是配合JPA一起操作

<dependency>
   <groupId>com.h2database</groupId>
   <artifactId>h2</artifactId>
   <version>1.4.197</version>
</dependency>
复制代码


2.配置,这里可以直接配置初始化数据文件,在项目启动后会自动初始化数据

spring:
  jpa:
    #使用的是H2的方言
    database-platform: org.hibernate.dialect.H2Dialect
    hibernate:
      ddl-auto: update
    properties:
      hibernate:
        #显示执行sql
        show_sql: true
        use_sql_comments: true
        format_sql: true
  datasource:
    #mem:连接到内存 file是保存到文件 
    url: jdbc:h2:mem:h2_test;MODE=MySQL;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
    driver-class-name: org.h2.Driver
    username: h2_root
    password: root
    initialization-mode: always
复制代码


二.具体实现


1.启动时创建表微信截图_20220531145607.png

2.新增数据,可以看到执行的sql微信截图_20220531145631.png


3.获取数据


1)代码

User user = new User();
user.setUserName("测试H2_人员1号");
user.setCreateDate(new Date());
User result = userRepository.save(user);
log.info("保存结果{}",result);
List<User> all = userRepository.findAll();
log.info("所有用户信息{}",all);
复制代码


2)结果微信截图_20220531145703.png


小结


以上就是对H2数据库的操作,不是很复杂。当遇到电脑系统重装但是又需要用到数据库测试功能,这时候去安装配置数据库还要下载和安装,这个时候H2的优势就来了,配置上就直接用,很是方便,感兴趣的小伙伴可以去试试。

目录
相关文章
|
5月前
|
Java 数据库连接 数据库
SpringBoot内嵌数据库
SpringBoot内嵌数据库
75 0
|
11月前
|
Java 数据库 Spring
RuoYi 集成H2数据库
RuoYi 集成H2数据库
109 0
|
SQL Java 数据库连接
在java中h2数据库的使用
H2 是一个轻量级的嵌入式数据库,可以在 Java 应用程序中使用
477 0
|
4月前
|
SQL druid Java
传统后端SQL数据层替代解决方案: 内置数据源+JdbcTemplate+H2数据库 详解
传统后端SQL数据层替代解决方案: 内置数据源+JdbcTemplate+H2数据库 详解
50 1
|
5月前
|
SQL 存储 定位技术
数据库基础(七):用户自定义数据类型与标量值、内嵌表值、多语句表值函数等用户定义函数的创建、使用、删除
数据库基础(七):用户自定义数据类型与标量值、内嵌表值、多语句表值函数等用户定义函数的创建、使用、删除
113 1
|
11月前
|
Java 数据库
springboot使用内置h2数据库数据保存本地文件夹
springboot使用内置h2数据库数据保存本地文件夹
199 0
|
SQL Java 数据库连接
H2数据库相关知识
H2数据库是一个嵌入式关系数据库管理系统(RDBMS),它以纯Java编写,支持SQL和JDBC标准。H2数据库具有高性能、轻量级、易于使用和部署的特点。它可以作为内存数据库或持久化数据库使用,并且支持多种模式,包括嵌入式模式、服务器模式和混合模式。H2数据库还提供了一些高级功能,如触发器、存储过程和内置函数,使开发者能够更灵活地操作数据。
123 1
|
Java 数据库 Spring
在java中结合springboot使用h2数据库
在java中h2数据库的使用
141 0
|
Java 数据库
skywalking系列之-下载并且安装H2数据库
skywalking系列之-下载并且安装H2数据库
|
SQL 网络协议 安全
下一篇
无影云桌面