gpt4 book ai didi

java - 我怎样才能加入 3 个实体 JPA?

转载 作者:行者123 更新时间:2023-11-30 11:15:41 26 4
gpt4 key购买 nike

我有 3 个实体:Aluno、Turma 和 Modalidade。现在我需要创建 Matricula,这个实体 Matricula 将包含 Aluno、Turma 和 Modalidade 的所有 ID 以及其他属性。

一个 Matricula 可以有一个 Aluno,可以有多个 Turma,可以有多个 Modalidade。

实体Matricula,可以有:OneToOne 阿鲁诺一对多图玛一对多模式

希望您能理解。

我该怎么做?

最佳答案

我有一个教程,其中相当详细地介绍了如何使用 Hibernate 注释设置各种关系。你可以找到它here .

我假设你想要使用外键映射的双向关系(如教程中所示,如果这是错误的,你可以在那里找到单向配置),你基本上可以像这样声明你的类:

@Entity
@Table
public class Matricula {

@Id
private long matriculaId;

@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "alunoId")
private Aluno aluno;

@OneToMany(mappedBy="turma")
private List<Turma> turmas;

@OneToMany(mappedBy="modalidade")
private List<Modalidade> modalidades;
}

@Entity
@Table
public class Turma {
//Put a unique ID here to be used as PK

@ManyToOne
@JoinColumn(name="matriculaId)
private Matricula matricula;
}

@Entity
@Table
public class Modalidade {

//Put a unique ID here to be used as PK

@ManyToOne
@JoinColumn(name="matriculaId)
private Matricula matricula;
}

@Entity
@Table
public class Aluno {

//Put a unique ID here to be used as PK

@OneToOne(mappedBy="aluno")
private Matricula matricula;
}

请注意,这是假设您的列名匹配,并且您的数据库设置正确。

希望一切顺利

关于java - 我怎样才能加入 3 个实体 JPA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25255599/

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