gpt4 book ai didi

java - 如何在模型内建立自反的一对多关系?

转载 作者:行者123 更新时间:2023-12-02 13:37:33 24 4
gpt4 key购买 nike

在数据库中有一个具有自反一对多关系的表:

create table structure 
(
struct_code varchar2(15) not null,
str_struct_code varchar2(15),
struct_lib varchar2(255),
struct_sigle varchar2(10),
struct_comment clob,
struct_interne smallint default 1,
constraint pk_structure primary key (struct_code)
);

alter table structure add constraint fk_structur_associati_structur foreign key (str_struct_code) references structure (struct_code);

我创建了相应的模型:

@Entity
@Table(name = "structure")
public class Structure {

@Id()
@Column(name="struct_code")
private String code;

@Column(name="struct_sigle")
private String sigle;

@Column(name="struct_lib")
private String lib;

@Column(name="struct_interne")
private Integer interne;

@ManyToOne
@JoinColumn(name = "struct_code")
private Structure sousStructure;

public Structure() {
super();
}

public Structure(String code) {
super();
}

// getters and setters

}

但是当我构建项目时,出现错误: mappingexception 在实体映射中重复列:com.ambre.pta.model.Structure 列:struct_code (应使用 insert="false"update= 进行映射“假”)

那么如何正确书写自反关系呢?

最佳答案

我确实有这样的东西:

@ManyToOne
@JoinColumn(name = "parent_struct_code", nullable = true)
private Structure parentStructure;

@OneToMany(mappedBy = "parentStructure", cascade = CascadeType.REMOVE, fetch=FetchType.LAZY)
private List<Structure> sousStructures = new ArrayList<>();

关于java - 如何在模型内建立自反的一对多关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42907277/

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