在springboot中使用h2数据库
在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数据库相关推荐
- Java嵌入式数据库H2学习总结(三)——在Web应用中嵌入H2数据库
H2作为一个嵌入型的数据库,它最大的好处就是可以嵌入到我们的Web应用中,和我们的Web应用绑定在一起,成为我们Web应用的一部分.下面来演示一下如何将H2数据库嵌入到我们的Web应用中. 一.搭建测 ...
- 如何在Spring Boot App中集成H2数据库
你好朋友, 在本教程中,我们将尝试探索如何在Spring Boot应用程序中与H2数据库集成. 在进行检查之前,让我们了解有关H2数据库的一些基础知识,如下所述,然后我们将讨论H2数据库与Spring ...
- SpringBoot学习笔记(9)----SpringBoot中使用关系型数据库以及事务处理
在实际的运用开发中,跟数据库之间的交互是必不可少的,SpringBoot也提供了两种跟数据库交互的方式. 1. 使用JdbcTemplate 在SpringBoot中提供了JdbcTemplate模板 ...
- Java嵌入式数据库H2学习总结(二)——在Web应用程序中使用H2数据库
一.搭建测试环境和项目 1.1.搭建JavaWeb测试项目 创建一个[H2DBTest]JavaWeb项目,找到H2数据库的jar文件,如下图所示: H2数据库就一个jar文件,这个Jar文件里面包含 ...
- spring_如何在Spring Boot App中集成H2数据库
spring 你好朋友, 在本教程中,我们将尝试探索如何在Spring Boot应用程序中与H2数据库集成. 在进行检查之前,让我们了解有关H2数据库的一些基础知识,如下所述,然后我们将讨论H2数据库 ...
- java h2数据库_JAVA 项目中使用 H2 数据库
JAVA 项目中使用 H2 数据库 发布时间:2018-06-08 15:43, 浏览次数:823 , 标签: JAVA 为什么要使用H2数据库 H2数据库是可以嵌入到JAVA项目中的,因为只需要导入 ...
- SpringBoot中使用Redis数据库
1.可以下载Iedis插件浏览Redis中数据 2.下好安装好Redis,开启Redis服务 3.配置Redis Server信息 查看Redis数据库里面数据 4.在项目中使用Redis数据库 1) ...
- SpringBoot之安装H2数据库
最近研究Mubatis-Plus,由于官方的demo都是基于H2数据库的 我想研究他的具体用法,所以决定安装H2数据库进行研究 下载地址 http://www.h2database.com/html/ ...
- SpringBoot中修改MySQL数据库建表方言
properties配置增加 spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
最新文章
- 网路游侠:用防篡改和WAF保护网站安全
- 【PHP】 获取网站信息
- maven+testng+eclipse
- mysql 浮点数 字节_数据库学习笔记之MySQL(02)
- android sh 指令_Java/Android中实现Shell命令
- mysql的告警日志_MySQL Aborted connection告警日志的分析
- 十三、axios框架学习
- 创建mysql代码实例_MySQL筹建系列之多实例_mysql
- 一个用于学习的react项目
- http状态码_一些常见的HTTP状态码
- python简易消息连续发送代码
- 配置安装跟踪服务器Tracker 配置FastDFS存储服务器 Storage
- 华为语音解锁设置_华为手机语音唤醒解锁 华为语音助手解锁屏幕
- 轻松搞明白:软切换和硬切换的区别
- 开源地图平台 Mapbender
- Deep learning for minimum mean-square error approaches to speech enhancement
- [Pandas] 数据合并 pd.merge
- [uni-app]聊天App实例
- 全网最全,接口自动化测试怎么做的?精通接口自动化测试详解
- getPrepayId php,获取到 prepay_id 后将参数再次签名传输给 APP 发起支付
热门文章
- Huffman(哈夫曼)编码--又称最佳编码(最有效的二进制编码)
- 用UltraIso刻录XP到U盘安装是不行的
- 我看TechEd 2012之技术热点
- IT-标准化(中国)有限公司-网络拓朴图
- 使用|DataDirectory| 的烦恼
- DebootstrapChroot
- Heinz College of Information Systems and Public Policy Carnegie Mellon University
- 人终究要活出自己对于这个世界的看法和自己的处事方式,并且由内而外的生成自信
- 关于 Visual stdio 编译报错:error MSB6006: “CL.exe”已退出
- AndroidStudio3.4+Unity2018.3,导出JAR包给UNITY使用