SpringBoot配置使用H2数据库的简单教程

发布时间:2021-07-06 11:13 来源:脚本之家 阅读:0 作者:是小张啊 栏目: 开发技术 欢迎投稿:712375056

目录

    如何操作

    依赖

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <optional>true</optional>
    </dependency>

    yml配置

    server:
      # 服务端口
      port: 8090
    
    #h2配置
    #启用SQL语句的日志记录
    spring:
      jpa:
        show-sql: true
      #设置ddl模式
        hibernate:
          ddl-auto: update
    #    database-platform: org.hibernate.dialect.H2Dialect
      ##数据连接设置
      datasource:
        driverClassName: org.h2.Driver
      #可执行程序的当前路径
        url: jdbc:h2:mem:test
      #指定的静态配置路径
        username: h2
        password: h2
      ##数据初始化设置
      #进行该配置后,每次启动程序,程序都会运行resources/db/schema.sql文件,对数据库的结构进行操作。
        schema: classpath:db/schema.sql
      #进行该配置后,每次启动程序,程序都会运行resources/db/data.sql文件,对数据库的数据操作。
        data: classpath:db/data.sql
      ##h2 web console设置
      #表明使用的数据库平台是h2
        platform: h2
      # 进行该配置后,h2 web consloe就可以在远程访问了。否则只能在本机访问。
      h2:
        console:
          settings:
            web-allow-others: true
      #进行该配置,你就可以通过YOUR_URL/h2访问h2 web consloe。YOUR_URL是你程序的访问URl。
          path: /h2
      #进行该配置,程序开启时就会启动h2 web consloe。当然这是默认的,如果你不想在启动程序时启动h2 web consloe,那么就设置为false。
          enabled: true

    生成内存数据库H2

    启动H2数据库有两种方式

    第一种:

    自动执行.sql文件,每次重新启动项目是,都会去运行一次操作文件

    DROP TABLE IF EXISTS `student`;
    CREATE TABLE `student`
    (
        `id`   varchar(225),
        `name` varchar(225) ,
        `age`  int(11)
    );
    
    -- ----------------------------
    -- Records of student
    -- ----------------------------
    INSERT INTO `student` VALUES ('0', '张三', 20);
    INSERT INTO `student` VALUES ('1', '少杰', 20);
    INSERT INTO `student` VALUES ('10', '赵子龙', NULL);

    第二种

    自动去创建数据库,借用Spring Data Jpa的注解,启动时自动创建内存数据库

    @Entity
    @Data
    @Accessors(chain = true)
    @Table(name = "student")
    @AllArgsConstructor
    @NoArgsConstructor
    public class Student implements Serializable {
    
        /**
         * 学生id
         */
        @Id
        @Column(name = "id")
        private String id;
    
        /**
         * 学生名称
         */
        @Column(name = "name")
        private String name;
    
        /**
         * 学生年纪
         */
        @Column(name = "age")
        private Integer age;
    
    }

    使用配置的账号密码进行登录,别的不说,先跑起来最要紧

    (注意:这时对数据库中的数据进行任何的改变都将是无效的,需要对数据做持久化才能保存数据)

    持久化

    修改yaml配置

    # windows本地数据库地址
    spring.data.url: jdbc:h2:file:D:/tools/development/h2/db/student

    重新启动,发现多了两个文件,分别是student.mv.dbstudent.trace.db

    操作数据库什么的,都和MySQL没什么太大的区别,当前用的是Spring Data Jpa那就更简单了,非常nice

    以上就是SpringBoot配置使用H2数据库的简单教程的详细内容,更多关于SpringBoot配置使用H2数据库的资料请关注脚本之家其它相关文章!

    免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和分享为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们QQ:712375056,同时欢迎投稿传递力量。