我正在尝试使用Spring Boot将H2内存数据库持久化到文件中,以便重复使用其中的数据。
不幸的是,指定数据源URL的方法如下:
spring.datasource.url = jdbc:h2:file:~/WeatherDB;FILE_LOCK=FS
对我来说没有用。我在我的硬盘上找不到由H2生成的文件(此外,在重新启动服务器后,保存的数据不可用)。
为了更好地理解,我创建了一个示例项目,可以在Bitbucket上找到。
因此,无论是从IDE中使用gradle run
运行应用程序还是从jar包中打包后运行应用程序似乎都没有区别。
需要哪些配置选项才能持久化和重复使用H2数据库?
更新:
我意识到有一个配置选项的执行器端点在http://localhost:8080/configprops
显示。
"spring.datasource.CONFIGURATION_PROPERTIES": {
"prefix": "spring.datasource",
"properties": {
"schema": null,
"data": null,
"xa": {
"dataSourceClassName": null,
"properties": { }
},
"separator": ";",
"url": "jdbc:h2:file:~/WeatherDB",
"platform": "all",
"continueOnError": false,
"jndiName": null,
"sqlScriptEncoding": null,
"password": "******",
"driverClassName": "org.h2.Driver",
"initialize": true,
"username": "sa"
}
},
但是我在硬盘上找不到名为WeatherDB
的文件,而且在重新启动服务器后也没有任何数据可用。
非常欢迎任何建议;-)