Java Hibernate-基类外键
我有一个实体级设备,它来自于基类RecordInfo:Java Hibernate-基类外键,java,spring,hibernate,spring-boot,Java,Spring,Hibernate,Spring Boot,我有一个实体级设备,它来自于基类RecordInfo: @Entity @DynamicInsert @DynamicUpdate @Getter @Setter @NoArgsConstructor @Table(name="equipment", schema = "general", indexes = {@Index(name = "idx_general_equipment_deleted", columnList = "deleted")}, uniq
@Entity
@DynamicInsert
@DynamicUpdate
@Getter
@Setter
@NoArgsConstructor
@Table(name="equipment", schema = "general",
indexes = {@Index(name = "idx_general_equipment_deleted", columnList = "deleted")},
uniqueConstraints= {
@UniqueConstraint(name = "uq_general_equipment_code", columnNames = {"code"})
})
public class Equipment extends RecordInfo implements ICodeDesc {
@NotNull
@Length(min = 1, max = 20)
@Column
private String code;
@Length(max = 255)
@Column
private String description;
@NotNull
@Column(columnDefinition = "boolean default 'false'")
private boolean deleted;
@NotNull
@Column
@Enumerated(EnumType.ORDINAL)
private EEquipmentType type;
@ManyToOne(fetch = FetchType.LAZY)
@Cascade(org.hibernate.annotations.CascadeType.ALL)
@JoinColumn(name="unit_id", foreignKey = @ForeignKey(name = "fk_general_unit_equipment"))
private Unit unit;
在应用程序启动时,我遇到以下异常:
org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl:GenerationTarget在接受命令时遇到异常:通过JDBC语句执行DDL“alter table general.equipment drop constraint fk_core_record_info_user”时出错
org.hibernate.tool.schema.spi.CommandAcceptanceException:通过JDBC语句执行DDL“alter table general.DEPLACE drop constraint fk_core_record_info_user”时出错
Hibernate确实会在执行以下操作时删除此外键:
Hibernate:如果存在,则删除表administration.user\u数据级联
相关的休眠设置包括:
hibernate.hbm2ddl.auto=create
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
我使用Spring boot版本“2.2.0.M6”
有没有办法避免这种异常,hibernate如何确定在应用程序启动时删除和重新创建表的顺序
hibernate.hbm2ddl.auto=create
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect