H2 databse加载数据只有一次,但在应用程序结束不丢弃数据

问题描述:

我给了一个使用嵌入H2的弹簧启动应用程序。我需要的是第一次启动应用程序,从data.sql载入数据。每次应用程序结束或中断时,都应该维护数据。原因是我在Heroku上部署了我的应用程序,免费使用,30分钟后睡觉。H2 databse加载数据只有一次,但在应用程序结束不丢弃数据

您必须在嵌入模式下使用数据库。见here

所以,你的数据源URL必须是这样的:

spring.datasource.url=jdbc:h2:~/myDbFile;DB_CLOSE_ON_EXIT=FALSE 

你可以让你data.sql负载条件和使用文件H2数据库看到https://www.javatips.net/blog/h2-file-database-example