一对多同一类弹簧数据(休眠)

时间:2016-07-25 13:41:26

标签: java spring hibernate spring-boot spring-data

我想使用hibernate(spring data)

使用相同的类java建立一对多的关系

这是我的代码

@Data
@Entity
public class TemplateData implements Serializable{

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    @ManyToOne
    private TemplateData div;
    @OneToMany(mappedBy="div")
    private Collection<TemplateData> baseCSS;

    private int position;
    private String data;

}

我收到此错误

HHH000388: Unsuccessful: alter table add constraint template data FK_y1mi9blsbc08tmwm9jgvdd1b foreign key (template_data_id) references template_data
ERROR: "template_data" relationship does not exist

1 个答案:

答案 0 :(得分:-1)

有时在我们使用

时会出现此问题
hibernate.hbm2ddl.auto=create-drop

您可以通过更改hibernate.hbm2ddl.auto更新:

来解决此问题
hibernate.hbm2ddl.auto=update

您可以浏览this tutorial

Mikko Maunu建议

  

create-dropin-memory数据库的组合会产生这些   对于它试图删除的每个数据库对象。原因是有   没有要删除的任何数据库对象 - 执行DROP语句   反对空数据库。

     

对于普通的永久数据库,这样的错误确实会发生,因为   Hibernate在执行DROP语句之前没有弄明白   添加的对象存在于数据库中,或者是新的。

资源链接:

Unsuccessful: alter table XXX drop constraint YYY in Hibernate/JPA/HSQLDB standalone