当前位置: 首页 > 知识库问答 >
问题:

使用Spring Boot创建h2数据库,如果它不存在,则不要删除。桌面应用程序

祁烨
2023-03-14

我正在写一个桌面应用程序,需要语言独裁。

我希望我的应用程序仅在用户第一次运行我的应用程序时创建h2数据库,然后将翻译从. xdxf指令加载到db中。

在快速浏览了几篇文章之后,我发现常见的用例是每次应用程序启动时创建一个新的模式,并在退出时销毁它。我没弄错吧?

有没有办法在应用程序停止后保留创建的架构?

P、 任何合适的教程链接对我来说都很有用。谢谢

共有1个答案

柴兴贤
2023-03-14

您指的是Spring Boot默认的功能。您可以通过多种方式进行配置,阅读文档应该会有所帮助。

H2也可以通过多种方式进行配置,包括基于文件的持久性(即在应用程序重新启动后幸存下来)。

使用您当前在内存中使用H2的设置,您可以尝试此配置并查看文档以获取其余部分:

spring.datasource.url = jdbc:h2:file:~/testdb

我们将根据URL找出驱动程序。请注意,由于您控制了此设置,因此不会将Hibernate配置为在启动时自动创建架构(如果您依赖于此)。查看此问题以了解更多详细信息。

 类似资料:
  • 问题内容: 我很沮丧,我不知道该怎么做。 基本上,我只想创建一个表,但是如果它存在,则需要将其删除并重新创建,而不是将其截断,但是如果不存在,则可以创建它。 有人可以帮忙吗? 谢谢乔治 问题答案: 放在tablename您的发言之前。 该语句将删除该表(如果存在),但如果不存在则不会引发错误。

  • 我是postgreSQL的新手,我正在尝试创建一个模式文件,其中包含创建数据库和所需表所需的所有脚本。我过去为SQl服务器执行此操作的方式是检查数据库是否存在,然后运行必要的脚本。 postgreSQL中的以下脚本引发了一个错误:“无法从函数或多命令字符串执行创建数据库” 我通过导出数据库的备份创建了一个postgres数据库转储文件,但其中包含, 这意味着每次运行模式文件时,数据库都会被删除并重

  • 问题内容: 我想初始化一个H2数据库,但是我不确定记录是否存在。如果它们不存在,我什么都不愿做,但是如果它们不存在,我想写默认值。 像这样的东西: 问题答案: 以下内容适用于MySQL,PostgreSQL和H2数据库:

  • 问题内容: 有创建数据库的类似物吗? 背景:我正在编写一个脚本,以在未知系统上的PostgreSQL中自动设置架构。我不确定数据库(甚至是架构的一部分)是否已经部署,因此如果某些结构已经存在,我想构建代码以使其不会失败(或者理想情况下甚至显示错误)。我想区分导致我无法创建数据库的错误(因此中止将来的架构更改,因为它们将无法工作)。 问题答案: 否,但是您可以查询pg_catalog.pg_data

  • 我正在使用和,并希望我的应用程序创建数据库,如果它不存在。我在我的中有以下选项 在上面我得到了错误: 知道我错过了什么吗?

  • Spring我是新的。我正在尝试使用H2数据库和JDBC(不是JPA/Hibernate)。 因此,使用Spring Initializr,当我添加这些依赖项时: 并将此属性设置为 true: testdb数据库<代码> mem: > < /代码创建了一个 但是当我将jpa依赖项改为: 数据库未创建,我收到以下错误消息: 因此,我想知道为什么它不能与JDBC一起工作,以及您是否知道一种使其工作的解