spring-boot文件系统中的持久性h2database

时间:2017-12-20 19:20:41

标签: spring-boot h2

如何使用h2database配置spring-boot,以便每次重新启动时重用数据库。

这是我在application.properties文件中唯一的一行

spring.jpa.database平台= org.hibernate.dialect.H2Dialect

1 个答案:

答案 0 :(得分:6)

您必须为spring.datasource.url指定一个指定文件系统数据库的值。您可以使用jdbc:h2:file:前缀来执行此操作 例如,您可以使用此配置将数据库存储在mydb.mv.db目录的db文件夹中的home文件中:

spring.datasource.url = jdbc:h2:file:~/db/mydb

请注意,spring.jpa.database-platform=org.hibernate.dialect.H2Dialect不是必需的。运行时位于类路径中的url和H2 JDBC驱动程序就足够了。

另请注意,默认情况下,如果您使用嵌入式数据库(H2,HSQL或Derby),将在启动时自动创建数据库。

即使您在JDBC URL中将文件指定为数据库,也是如此。

因此,为了避免在每次Spring Boot启动时重新创建db,您还应该添加:

spring.jpa.hibernate.ddl-auto = update

spring.jpa.hibernate.ddl-auto = validate