在springboot中使用h2数据库

一、h2数据库介绍

h2database为我们提供了十分轻量,十分快捷方便的内嵌式数据库

  • H2是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中。
  • 可以同应用程序打包在一起发布
  • 它的另一个用途是用于单元测试。启动速度快,而且可以关闭持久化功能,每一个用例执行完随即还原到初始状态
  • 提供JDBC访问接口,提供基于浏览器的控制台,可以执行sql
  • 免费,开源,够快
  • 还方便了程序刚开始dao层单元测试测试,不需要搭建oracle,不需要加载mysql,快速测试写的dao

二、导入过程

1. 在pom.xml中导入相关依赖

<dependency><groupId>com.h2database</groupId><artifactId>h2</artifactId><scope>runtime</scope>
</dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope>
</dependency>

2. 修改application.yml文件,加入H2相关配置

server:port: 8089
spring:datasource:url: jdbc:h2:~/testdriver-class-name: org.h2.Driverusername: sapassword: 123456#    schema: classpath:db/schema.sql
#    data: classpath:db/data.sqljpa:database: h2hibernate:ddl-auto: updateshow-sql: trueh2:console:path: /h2-consoleenabled: true

3. domain层,即Location类(entity):

package com.springboot.demo.entity;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;import javax.persistence.*;@Entity
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Location {@Id@GeneratedValue(strategy = GenerationType.IDENTITY)private Long id;private String type;private double latitude;private double longtitude;
}

4. dao层,即LocationRepository接口:

package com.springboot.demo.repository;import com.springboot.demo.entity.Location;
import org.springframework.context.annotation.Bean;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;import java.util.List;@Repository
public interface LocationRepository extends JpaRepository<Location,Long> {List<Location> getLocationsByType(String type);
}

5. controller层,即LocationController:

package com.springboot.demo.controller;import com.springboot.demo.entity.Location;
import com.springboot.demo.repository.LocationRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.stereotype.Repository;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;import java.util.List;@Controller
public class HelloContraller {@Autowiredprivate LocationRepository locationRepository;@ResponseBody@RequestMapping("/hello")public List<Location> hello(){return locationRepository.findAll();}
}

6. 编写DemoApplication

package com.springboot.demo;import com.springboot.demo.entity.Location;
import com.springboot.demo.repository.LocationRepository;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;@SpringBootApplication
public class DemoApplication {@BeanInitializingBean saveData(LocationRepository repo){return ()->{repo.save(new Location((long) 1,"1",38.998064, 117.317267));repo.save(new Location((long)2,"2",38.997793, 117.317069));repo.save(new Location((long)3,"3",38.998006, 117.317101));repo.save(new Location((long)4,"4",38.997814, 117.317332));};}public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}}

7. 启动项目,打开浏览器访问http://localhost:8089/hello

8. 下面使用H2控制台查看:

http://localhost:8089/h2-console

输入用户名sa,密码123456

9. 在打开的页面中点击左侧的Location。

10. 可以看到右侧显示了SQL:

SELECT * FROM USER

点击上面的Run执行。

11. 执行完毕后,可以看到下面显示了我们加入的数据。

转载于:https://www.cnblogs.com/mizersy/p/10698409.html

在springboot中使用h2数据库相关推荐

  1. Java嵌入式数据库H2学习总结(三)——在Web应用中嵌入H2数据库

    H2作为一个嵌入型的数据库,它最大的好处就是可以嵌入到我们的Web应用中,和我们的Web应用绑定在一起,成为我们Web应用的一部分.下面来演示一下如何将H2数据库嵌入到我们的Web应用中. 一.搭建测 ...

  2. 如何在Spring Boot App中集成H2数据库

    你好朋友, 在本教程中,我们将尝试探索如何在Spring Boot应用程序中与H2数据库集成. 在进行检查之前,让我们了解有关H2数据库的一些基础知识,如下所述,然后我们将讨论H2数据库与Spring ...

  3. SpringBoot学习笔记(9)----SpringBoot中使用关系型数据库以及事务处理

    在实际的运用开发中,跟数据库之间的交互是必不可少的,SpringBoot也提供了两种跟数据库交互的方式. 1. 使用JdbcTemplate 在SpringBoot中提供了JdbcTemplate模板 ...

  4. Java嵌入式数据库H2学习总结(二)——在Web应用程序中使用H2数据库

    一.搭建测试环境和项目 1.1.搭建JavaWeb测试项目 创建一个[H2DBTest]JavaWeb项目,找到H2数据库的jar文件,如下图所示: H2数据库就一个jar文件,这个Jar文件里面包含 ...

  5. spring_如何在Spring Boot App中集成H2数据库

    spring 你好朋友, 在本教程中,我们将尝试探索如何在Spring Boot应用程序中与H2数据库集成. 在进行检查之前,让我们了解有关H2数据库的一些基础知识,如下所述,然后我们将讨论H2数据库 ...

  6. java h2数据库_JAVA 项目中使用 H2 数据库

    JAVA 项目中使用 H2 数据库 发布时间:2018-06-08 15:43, 浏览次数:823 , 标签: JAVA 为什么要使用H2数据库 H2数据库是可以嵌入到JAVA项目中的,因为只需要导入 ...

  7. SpringBoot中使用Redis数据库

    1.可以下载Iedis插件浏览Redis中数据 2.下好安装好Redis,开启Redis服务 3.配置Redis Server信息 查看Redis数据库里面数据 4.在项目中使用Redis数据库 1) ...

  8. SpringBoot之安装H2数据库

    最近研究Mubatis-Plus,由于官方的demo都是基于H2数据库的 我想研究他的具体用法,所以决定安装H2数据库进行研究 下载地址 http://www.h2database.com/html/ ...

  9. SpringBoot中修改MySQL数据库建表方言

    properties配置增加 spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect

最新文章

  1. 网路游侠:用防篡改和WAF保护网站安全
  2. 【PHP】 获取网站信息
  3. maven+testng+eclipse
  4. mysql 浮点数 字节_数据库学习笔记之MySQL(02)
  5. android sh 指令_Java/Android中实现Shell命令
  6. mysql的告警日志_MySQL Aborted connection告警日志的分析
  7. 十三、axios框架学习
  8. 创建mysql代码实例_MySQL筹建系列之多实例_mysql
  9. 一个用于学习的react项目
  10. http状态码_一些常见的HTTP状态码
  11. python简易消息连续发送代码
  12. 配置安装跟踪服务器Tracker 配置FastDFS存储服务器 Storage
  13. 华为语音解锁设置_华为手机语音唤醒解锁 华为语音助手解锁屏幕
  14. 轻松搞明白:软切换和硬切换的区别
  15. 开源地图平台 Mapbender
  16. Deep learning for minimum mean-square error approaches to speech enhancement
  17. [Pandas] 数据合并 pd.merge
  18. [uni-app]聊天App实例
  19. 全网最全,接口自动化测试怎么做的?精通接口自动化测试详解
  20. getPrepayId php,获取到 prepay_id 后将参数再次签名传输给 APP 发起支付

热门文章

  1. Huffman(哈夫曼)编码--又称最佳编码(最有效的二进制编码)
  2. 用UltraIso刻录XP到U盘安装是不行的
  3. 我看TechEd 2012之技术热点
  4. IT-标准化(中国)有限公司-网络拓朴图
  5. 使用|DataDirectory| 的烦恼
  6. DebootstrapChroot
  7. Heinz College of Information Systems and Public Policy Carnegie Mellon University
  8. 人终究要活出自己对于这个世界的看法和自己的处事方式,并且由内而外的生成自信
  9. 关于 Visual stdio 编译报错:error MSB6006: “CL.exe”已退出
  10. AndroidStudio3.4+Unity2018.3,导出JAR包给UNITY使用