• win+mac通用的SpringBoot+H2数据库集成过程。


    有小部分大学的小部分老师多毛病,喜欢用些晦涩难搞的数据库来折腾学生,我不理解,但大受震撼。按我的理解,这种数据库看着好像本地快速测试代码很舒服,但依赖和数据库限制的很死板,对不上就是用不了,而且创建过程也麻烦,就算能借用mysql模型,也没多方便。

    可以先看下面这篇了解下,再看我的避坑:

    springboot+H2集成的另一个帖子。

    一. 搭建数据库

    1.下载H2数据库

    点击下载

    注意解压后进入 ./h2/bin/h2-2.2.224.jar 看到这个文件,win可以在文件浏览器的搜索框中输入cmd

    用执行以下命令,mac则cd到该文件夹执行以下命令,这需要java环境的。注意这时候mac启动好了会直接跳到这个页面,win要手动打开(localhost:8082/login.jsp)

    java -jar h2-2.2.224.jar

    2.如何进入控制台

    注意:最开始数据库没有东西,默认Generic H2 (Embedded),你在url最后写好一个你想写的数据库名后,点击链接会自动创建一个的,但用户名密码你要记住(密码不写也没事)。

    3.初始化页面内容。

    这里一开始没有你要的表数据,默认的两个表内容不要改,把自己的数据库sql内容放进文本框中,执行完得到 3中的内容。

    3.执行数据库并新建表内容。

    4.获取数据库db文件。

    搞定以上那些,会生成一份数据库文本,格式为:xxx.mv.db。每次新建都会生成一份的。

    win可以在数据库安装的地方找,一开始就可以设置路径。

    mac到/Users/yourName/xxmall.mv.db可以找到。

    ---------------------------------------------------------------------------------------------------------

    为什么说这么多呢,因为这份(xxmall.mv.db)文件就是用来给项目链接数据库运行的。

    二.在idea运行springboot+H2项目。

    以我的项目为例,idea中,找个路径放好你的db文件,比如我这样

    1.配置文件。

    yml还是properties(我是这个)都行配置的重点如下:

    1. #H2 ;MODE= XX h2数据库配置
    2. #spring.datasource.url=jdbc:h2:file:./h2db/xxmall
    3. # url后用 jdbc:h2:mem:xxmall 这个也可以,但注意,这里是没有数据的,
    4. # 你需要写一份insert脚本先去跑sql,这也是我把(xxmall.mv.db)拆出来的原因。
    5. spring.datasource.url=jdbc:h2:file:./h2db/xxmall;MODE=MySQL
    6. # mode不能漏泄,你可以根据需要写哪个数据库特性
    7. spring.datasource.username=sa
    8. spring.datasource.password=
    9. spring.datasource.driver-class-name=org.h2.Driver
    10. spring.h2.console.settings.web-allow-others=true
    11. spring.h2.console.path=/h2-console
    12. spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
    13. spring.thymeleaf.mode=HTML5
    14. spring.thymeleaf.encoding=UTF-8
    15. spring.thymeleaf.content-type=text/html
    16. spring.thymeleaf.cache=false
    17. ##################### jpa hibernate 配置 #########################
    18. spring.jpa.show-sql=false
    19. spring.jpa.database=h2
    20. spring.jpa.properties.hibernate.format_sql=false
    21. spring.jpa.generate-ddl=true
    22. spring.jpa.hibernate.ddl-auto=update

    2.注意点:

    jdbc:h2:file:./h2db/xxmall;MODE=MySQL

    /h2db/ 是本项目内的文件夹位置,xxmall是数据库名字,不要带上.mv.db,后面是特性借用mysql。

    注意你用的就是H2数据库,不要怀疑,下面的账号密码写你填上去的。

    2.还有实体类一定要写清楚@Column(name = "count") name=里面对应的数据库字段,H2对大小写,驼峰都敏感(我用JPA的原因吗?),必须每个都写好写对,还有,绝对不可以带反单引号 `,sql也不要。

    最后就是依赖,你下载的H2是哪个版本,那么pom文件就必须用哪个版本。

  • 相关阅读:
    基于Springboot的校园健康系统-计算机毕业设计源码
    Vue项目配置文件整理
    Pytorch分布式训练,其他GPU进程占用GPU0的原因
    Docker使用手册
    Mybatis出现空指针异常解决方法
    Blazor预研与实战
    倍思、南卡、漫步者开放式耳机好不好用? 硬核测评年度最强产品
    【一致性】redis+DB一致性如何保证? 从Cache Expiry到Double Delete双重删除
    你晓得小程序的身世么?
    QFile文件读写操作QFileInFo文件信息读取
  • 原文地址:https://blog.csdn.net/Mas1461261388/article/details/139395128