zoukankan      html  css  js  c++  java
  • SpringBoot使用H2内嵌数据库

    【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】

    1.驱动

    我们知道,JDBC是JDK自带的接口规范,不同的数据库有不同的实现,只需要引入相应的驱动包即可。

    在使用MySQL数据库时,引入的是MySQL驱动,相应的,使用H2数据库时,也需要引入H2驱动包:

    <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
        <version>1.4.199</version>
        <scope>runtime</scope>
    </dependency>
    
    <!--
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.35</version>
        <scope>runtime</scope>
    </dependency>
    -->
    

    2.配置

    在SpringBoot的application.properties文件配置相应属性:

    spring.datasource.driver-class-name=org.h2.Driver
    spring.datasource.url=jdbc:h2:~/folder
    spring.datasource.username=root
    spring.datasource.password=123456
    

    JDBC URL的作用可以决定H2是用内存还是磁盘文件存储数据等,详细介绍如下:

    本地文件

    连接语法([] 可选,<>可变):

    jdbc:h2:[file:][<path>]<databaseName>
    

    例如:

    jdbc:h2:~/test       //连接位于用户目录下的test数据库
    
    jdbc:h2:file:/data/sample
    
    jdbc:h2:file:E:/H2/gacl  //只在Windows下使用
    

    在Window操作系统下,"~"这个符号代表的就是当前登录到操作系统的用户对应的用户目录,比如我当前是使用Administrator用户登录操作系统的,所以在"C:Documents and SettingsAdministrator.h2"目录中就可以找到test数据库对应的数据库文件了。

    内存数据库

    【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】

    连接语法:

    jdbc:h2:mem:<databasename>
    

    示例:

    jdbc:h2:mem:test_mem
    

    远程连接

    这种连接方式就和其他数据库类似了,是基于Service的形式进行连接的,因此允许多个客户端同时连接到H2数据库。

    连接语法:

    jdbc:h2:tcp://<server>[:<port>]/[<path>]<databaseName>
    

    范例:

    jdbc:h2:tcp://localhost/~/test  //用户目录下
    
    jdbc:h2:tcp://localhost/E:/H2/gacl  //指定目录
    
    jdbc:h2:tcp://localhost/mem:gacl  //内存数据库
    

    然后,就可以像使用MySQL一样的使用H2了。

    扩展

    https://www.cnblogs.com/xuyatao/p/7080095.html

    版权声明

    【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】

  • 相关阅读:
    Python自然语言处理读书笔记第7章
    [转]基于SNS的文本数据挖掘
    使用python多线程实现一个简单spider
    基于内存共享的并行排序算法慢谈(中)
    [转]为什么我反对纯算法面试题
    从客户端检测到有潜在危险的Request.Form值
    repeater 回发或回调参数无效
    Nginx安装、平滑升级与虚拟机配置
    log4j.properties的配置示例
    jquery一般方法介绍
  • 原文地址:https://www.cnblogs.com/onblog/p/13044280.html
Copyright © 2011-2022 走看看