hibernate SpringBoot@Entity CREATE TABLE与Flyway CREATE TABLE

lhcgjxsq  于 2022-11-14  发布在  Spring
关注(0)|答案(1)|浏览(149)

当我们使用SpringBoot时(不依赖于Flyway)
一旦我们定义了一个对象模型,并用@Entity标记对其进行了标记,并且运行了该应用程序,Spring Boot似乎就会自动在数据库中创建一个表。
但是当我们添加Flyway依赖项时,当我们运行应用程序时,SpringBoot不会创建表,相反,它会抛出一个错误。因此,唯一的解决办法是在Flyway中创建一个表。有人知道为什么会发生这种事吗?

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing table [singer]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1753) ~[spring-beans-6.0.0-RC3.jar:6.0.0-RC3]
uemypmqf

uemypmqf1#

您可能希望在application.yml中设置此变量。

spring:
  jpa:
    hibernate:
      ddl-auto: update

相关问题