gpt4 book ai didi

java - Spring:H2 数据库持久化

转载 作者:IT老高 更新时间:2023-10-28 13:53:38 25 4
gpt4 key购买 nike

我的 application.properties:

spring.datasource.driverClassName=org.h2.Driver
spring.datasource.url=jdbc:h2:./src/main/resources/asnDB;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
spring.datasource.user=sa
spring.datasource.password=
spring.h2.console.enabled=true
spring.jpa.hibernate.ddl-auto=create

我有一个 data.sql,它是在我启动 spring-project 时加载的。

如何更改 application.properties 以使数据库持久化?

现在它总是会制造一个新的。如果我将 ddl.auto=create 更改为 ddl.auto=update,它也不起作用。我知道 ddl.auto=create 会覆盖我的数据库,但我不知道如何使其持久化。

在 data.sql 中有 3 个插入语句,当我运行项目时,我的数据库中已经有 3 个插入。然后我通过我的 UI 插入一个新的并退出项目。当我重新运行项目时,只有最初的 3 个插入。但应该有 4 个插入。

最佳答案

您错过了自动重新连接功能

spring.datasource.url=jdbc:h2:file:~/test2;DB_CLOSE_ON_EXIT=FALSE;AUTO_RECONNECT=TRUE

例如这样就可以了:

spring.datasource.url=jdbc:h2:file:~/test2;DB_CLOSE_ON_EXIT=FALSE;AUTO_RECONNECT=TRUE
spring.datasource.username=admin
spring.datasource.password=password
spring.datasource.driver-class-name=org.h2.Driver
#spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update

关于java - Spring:H2 数据库持久化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42857731/

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