gpt4 book ai didi

mysql - Hibernate不创建新表

转载 作者:行者123 更新时间:2023-11-29 19:30:13 25 4
gpt4 key购买 nike

我有下表

@JsonIgnoreProperties(ignoreUnknown = true)
@Entity
@Table(name = "School")


@JsonSerialize(include=JsonSerialize.Inclusion.NON_NULL)
public class School implements Serializable, Comparable<School>{

private static final long serialVersionUID = 1L;


@JsonProperty
@JsonProperty
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
long id;

}

这是设置 hibernate 配置以创建新数据库的 yaml 文件

 charSet: UTF-8
hibernate.dialect: org.hibernate.dialect.MySQLDialect
hibernate.hbm2ddl.auto: create
hibernate.show_sql: true

我读了很多解决类似问题的问题,但我不明白为什么 hibernate 会忽略该表

在尝试不同的解决方案后,似乎只有两个表没有被更新或重新创建。难道是因为他们之间的关联?

这是与之相关的第二个类

@Entity
@Table(name = "Student")
@SecondaryTable(name = "thirdTable", pkJoinColumns=@PrimaryKeyJoinColumn(name="thirdtablepk_id", referencedColumnName="id"))


@JsonIgnoreProperties(ignoreUnknown = true)
@JsonSerialize(include=JsonSerialize.Inclusion.NON_NULL)


public class Student implements Comparable<Student>, Serializable {

private static final long serialVersionUID = 1L;
@JsonProperty
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
long id;

@ManyToOne
School school;
}

最佳答案

我猜自从你用过

hibernate.hbm2ddl.auto: create

表一旦创建,就不会再次创建。为了每次删除和创建表,您需要使用 belwo 配置。

hibernate.hbm2ddl.auto: create-drop

希望这能解决您的疑问。

关于mysql - Hibernate不创建新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41837997/

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