Pom*_*rio 10 database spring h2
我目前使用嵌入式jetty和H2数据库在maven上运行我的petproject:
<jdbc:embedded-database id="dataSource" type="H2">
<jdbc:script location="/WEB-INF/database.sql"/>
</jdbc:embedded-database>
Run Code Online (Sandbox Code Playgroud)
每次运行服务器时,此设置都会重置我的数据库.我想将数据库保存为磁盘中的文件,这样我就不会在每次服务器启动时丢失数据.我该如何做到这一点?
您可以通过连接字符串来控制它.
jdbc:h2:~/test; # saves to the file ~/test
jdbc:h2:mem:db1 # in memory
Run Code Online (Sandbox Code Playgroud)
更多信息在这里.
编辑:
似乎连接字符串在spring H2 Configuration中是硬编码的,所以我认为这意味着你必须通过扩展EmbeddedDatabaseConfigurer来编写自己的实现,假设在设置之后没有其他方法来更改连接字符串H2EmbeddedDatabaseConfigurer.