我的spring boot应用程序无法从Oracle数据库实例读取。
如果我将应用程序配置为自动创建架构并通过data.sql
文件填充数据库,则它可以完美运行,就像这样:
spring:
datasource:
initialization-mode: always
...
jpa:
hibernate:
ddl-auto: create
但是如果我然后将配置更改为:
spring:
datasource:
initialization-mode: never
...
jpa:
hibernate:
ddl-auto: validate
然后重新启动spring boot应用程序,即使重新启动之前创建的所有表和数据仍在DB中,它也无法再从DB中读取。
以前有人遇到过此问题吗?还是您知道我什至可以开始尝试调试它的地方?
这是Oracle版本:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
这是我正在使用的驱动程序:
<dependency>
<groupId>com.oracle.database.jdbc</groupId>
<artifactId>ojdbc8</artifactId>
<scope>runtime</scope>
</dependency>
以及JPA的版本:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
这是春季启动版本2.3.3
更新:
这种情况似乎是在我通过Spring Boot向数据库写入数据之后发生的,即插入一条新记录,然后重新启动应用程序。