gpt4 book ai didi

详解IDEA中便捷内存数据库H2的最简使用方式

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 29 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章详解IDEA中便捷内存数据库H2的最简使用方式由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

  在idea中做练习或做demo时,有时候需要使用到数据库,但如果自己机子上本来没有安装数据库(全新安装太麻烦或资源有限),也没有可用的远程数据库时,我们可以直接在idea上使用便捷式的内存数据库h2,关于h2更多知识就自己去找一下资料了,接下来主要讲一下如何在idea下的springboot项目中把它用起来! 。

  首先在idea中新建一个空的maven项目,编辑项目pom.xml文件,增加springboot和最基础的数据访问相关jar包依赖:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?xml version= "1.0" encoding= "utf-8" ?>
<project xmlns= "http://maven.apache.org/pom/4.0.0"
      xmlns:xsi= "http://www.w3.org/2001/xmlschema-instance"
      xsi:schemalocation= "http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" >
   <modelversion>4.0.0</modelversion>
 
   <groupid>org.example</groupid>
   <artifactid>microservice-simple-provider- user </artifactid>
   <version>1.0-snapshot</version>
   <packaging>jar</packaging>
 
   <parent>
     <artifactid>spring-boot-starter-parent</artifactid>
     <groupid>org.springframework.boot</groupid>
     <version>2.4.2</version>
   </parent>
 
   <properties>
     <project.build.sourceencoding>utf-8</project.build.sourceencoding>
     <java.version>1.8</java.version>
   </properties>
 
   <dependencies>
     <dependency>
       <! --springboot的web项目起步依赖-->
       <groupid>org.springframework.boot</groupid>
       <artifactid>spring-boot-starter-web</artifactid>
       <version>2.4.2</version>
     </dependency>
     <dependency>
       <! --springboot的jpa数据访问组件起步依赖-->
       <groupid>org.springframework.boot</groupid>
       <artifactid>spring-boot-starter-data-jpa</artifactid>
       <version>2.3.1.release</version>
     </dependency>
     <dependency>
       <! --自动构建h2嵌入式或内存数据库的依赖-->
       <groupid>com.h2database</groupid>
       <artifactid>h2</artifactid>
       <version>1.4.200</version>
     </dependency>
   </dependencies>
 
   <build>
     <plugins>
       <plugin>
         <groupid>org.springframework.boot</groupid>
         <artifactid>spring-boot-maven-plugin</artifactid>
         <version>2.4.2</version>
       </plugin>
     </plugins>
   </build>
</project>

  然后在classpath路径范围内增加建表sql脚本文件和数据初始化文件:

详解IDEA中便捷内存数据库H2的最简使用方式

详解IDEA中便捷内存数据库H2的最简使用方式

  接着再添加springboot项目配置文件application.yml,并添加jpa、datasource和h2的主要配置项:

详解IDEA中便捷内存数据库H2的最简使用方式

  最后再为项目添加一个springboot启动类,即可将应用跑起来,并进行h2内存数据库的连接了:

详解IDEA中便捷内存数据库H2的最简使用方式

详解IDEA中便捷内存数据库H2的最简使用方式

  注意:自动创建的h2内存数据库的管理地址就是我们在application.yml中配置的h2.console.path地址,进入管理页后如下图所示:

详解IDEA中便捷内存数据库H2的最简使用方式

  这样我们的应用就相当于自带了一个便捷式内存数据库了! 。

  现在我们来为项目做一个最简单的h2内存数据库的使用样例——为h2数据库中的user表增加对应的实体类user.java、基于jpa的数据访问对象userrepository.java和api层控制类usercontroller.java:

user.java类:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package com.example.models;
 
import com.fasterxml.jackson.annotation.jsonignoreproperties;
 
import javax.persistence.*;
import java.math.bigdecimal;
 
@jsonignoreproperties(value = { "hibernatelazyinitializer" })
@entity
public class user {
   @id
   @generatedvalue(strategy = generationtype.auto)
   private long id;
 
   @ column
   private string username;
 
   @ column
   private string name ;
 
   @ column
   private integer age;
 
   @ column
   private bigdecimal balance;
 
   public long getid() {
     return id;
   }
 
   public void setid(long id) {
     this.id = id;
   }
 
   public string getusername() {
     return username;
   }
 
   public void setusername(string username) {
     this.username = username;
   }
 
   public string getname() {
     return name ;
   }
 
   public void setname(string name ) {
     this. name = name ;
   }
 
   public integer getage() {
     return age;
   }
 
   public void setage( integer age) {
     this.age = age;
   }
 
   public bigdecimal getbalance() {
     return balance;
   }
 
   public void setbalance(bigdecimal balance) {
     this.balance = balance;
   }
}

userrepository.java类:

?
1
2
3
4
5
6
7
8
9
package com.example.dao;
 
import com.example.models. user ;
import org.springframework.data.jpa.repository.jparepository;
import org.springframework.stereotype.repository;
 
@repository
public interface userrepository extends jparepository< user , long> {
}

usercontroller.java类:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package com.example.controller;
 
import com.example.dao.userrepository;
import com.example.models. user ;
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.web.bind.annotation.getmapping;
import org.springframework.web.bind.annotation.pathvariable;
import org.springframework.web.bind.annotation.restcontroller;
 
@restcontroller
public class usercontroller {
   @autowired
   private userrepository userrepository;
 
   @getmapping( "/{id}" )
   public user findbyid(@pathvariable long id) {
     user oneuser = this.userrepository.getone(id);
     return oneuser;
   }
}

  最后的项目结构如图所示:

详解IDEA中便捷内存数据库H2的最简使用方式

  来看一下效果:

详解IDEA中便捷内存数据库H2的最简使用方式

到此这篇关于详解idea中便捷内存数据库h2的最简使用方式的文章就介绍到这了,更多相关idea内存数据库h2内容请搜索我以前的文章或继续浏览下面的相关文章希望大家以后多多支持我! 。

原文链接:https://www.cnblogs.com/xuruiming/p/14493257.html 。

最后此篇关于详解IDEA中便捷内存数据库H2的最简使用方式的文章就讲到这里了,如果你想了解更多关于详解IDEA中便捷内存数据库H2的最简使用方式的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com