gpt4 book ai didi

spring-boot - 在 Spring Boot 应用程序中配置嵌入式 Derby

转载 作者:行者123 更新时间:2023-12-02 09:45:46 25 4
gpt4 key购买 nike

您能帮我在 Spring Boot 应用程序中设置与嵌入式 Derby 数据库的连接吗?

我在网上搜索,但只能找到服务器型 Derby 的解决方案,而不是嵌入式 Derby。

spring.jpa.database = ?
spring.jpa.hibernate.ddl-auto = create-drop

最佳答案

Derby 作为内存数据库

如果要配置 内存中 带有 spring boot 的 Derby 数据库,您需要做的最简单的事情就是提及运行时依赖项(以及 spring-boot-starter-data-jpa )作为

<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
<scope>runtime</scope>
</dependency>

这个最低限度的配置应该适用于 Spring Boot 中的任何嵌入式数据源。但是从当前的 Spring Boot 版本( 2.0.4.RELEASE )开始,这只会导致 Derby 的错误
org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing
DDL via JDBC Statement
Caused by: java.sql.SQLSyntaxErrorException: Schema 'SA' does not exist

这是因为 spring.jpa.hibernate.ddl-auto=create-drop 的默认配置看到这个 Spring Boot issue详情。

因此,您需要在 application.properties 中覆盖该属性作为
spring.jpa.hibernate.ddl-auto=update

Derby 作为持久数据库

如果您想使用 Derby 作为您的持久数据库。添加这些应用程序属性
spring.datasource.url=jdbc:derby:mydb;create=true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.DerbyTenSevenDialect
spring.jpa.hibernate.ddl-auto=update

关于spring-boot - 在 Spring Boot 应用程序中配置嵌入式 Derby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44411950/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com