Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JPA中外键的主详细信息ID_Java_Jpa_Jakarta Ee_Entity_Master Detail - Fatal编程技术网

Java JPA中外键的主详细信息ID

Java JPA中外键的主详细信息ID,java,jpa,jakarta-ee,entity,master-detail,Java,Jpa,Jakarta Ee,Entity,Master Detail,我有三张桌子, 其中一个是(场景),它是主表, 另外两个表(链接、节点)是它的详细信息。 我希望JPA为我持久化外键,同时在链接和节点表中持久化场景,而不需要我的干预, 有人帮我做这个吗 情景: @Entity @NamedQueries({ @NamedQuery(name = "Scenario.findAll", query = "select o from Scenario o") }) public class Scenario implements Serializable { p

我有三张桌子, 其中一个是(场景),它是主表, 另外两个表(链接、节点)是它的详细信息。 我希望JPA为我持久化外键,同时在链接和节点表中持久化场景,而不需要我的干预, 有人帮我做这个吗

情景:

@Entity
@NamedQueries({ @NamedQuery(name = "Scenario.findAll", query = "select o from Scenario o") })
public class Scenario implements Serializable {
private String className;
@Id
@Column(nullable = false,name="ID")
private int id;
private String linkFromPortIdProperty;
private String linkToPortIdProperty;
private String UUID;
@OneToMany(mappedBy = "scenario", cascade = { CascadeType.PERSIST, CascadeType.MERGE })
private List<Link> linkDataArray;
@OneToMany(mappedBy = "scenario1", cascade = { CascadeType.PERSIST, CascadeType.MERGE })
private List<Node> nodeDataArray;
节点:


当主实体(场景)被持久化时,对要持久化的所有细节对象使用CascadeType.ALL

@OneToMany(mappedBy = "scenario",cascade = CascadeType.ALL, orphanRemoval = true) 
private List<Link> linkDataArray;
@OneToMany(mappedBy=“scenario”,cascade=CascadeType.ALL,orphandremovation=true)
私有列表链接数据数组;
阅读Vladmichalcea编写的本指南:


当主实体(场景)被持久化时,对要持久化的所有细节对象使用CascadeType.ALL

@OneToMany(mappedBy = "scenario",cascade = CascadeType.ALL, orphanRemoval = true) 
private List<Link> linkDataArray;
@OneToMany(mappedBy=“scenario”,cascade=CascadeType.ALL,orphandremovation=true)
私有列表链接数据数组;
阅读Vladmichalcea编写的本指南:


我想我理解你所说的不干预的意思。但是,为了清楚起见,我建议您在代码片段中添加用于保存
…persist(link)
的代码以及数据库中的预期结果。我想我理解您所说的
无干预的意思。但是,为了清晰起见,我建议您在代码片段中添加用于保存
…persist(link)
的代码以及数据库中的预期结果。
@OneToMany(mappedBy = "scenario",cascade = CascadeType.ALL, orphanRemoval = true) 
private List<Link> linkDataArray;