gpt4 book ai didi

java - 如何使用rest api插入hibernate中的表,并且该表2列是另一个表的外键?

转载 作者:太空宇宙 更新时间:2023-11-04 09:06:17 25 4
gpt4 key购买 nike

我有 3 个 POJO 类 EmpDepDesig<​​ 三个表。我想使用 REST API 在 hibernate 中插入 Emp 表列 e_codee_namedep_id(Dep 表的外键)、desig_id(Desig<​​ 表的外键)、salary

我的Emprepositary类是

public class EmpRepositary {

public void addEmployee(Emp e1) {
Session session = SessionUtill.getSession();
Transaction tx = session.beginTransaction();
addEmployee1(session,e1);
tx.commit();
session.close();

}

public void addEmployee1(Session session, Emp e1) {
Emp emp= new Emp();
emp.setE_code(e1.getE_code());
emp.setE_name(e1.getE_name());
emp.setSalary(e1.getSalary());
emp.setDep(e1.getDep());
emp.setDesig(e1.getDesig());
session.save(emp);
}
}

这是我的 Emp POJO 类

@Entity
public class Emp {
@Id
private int e_code;
private String e_name;
private int salary;
@ManyToOne
private Dep dep;
@ManyToOne
private Desig desig;
getter setter
...
}

当我将数据放入 REST API 时,代码运行完美,但数据仅进入数据库 e_codee_namesalary,但 dept_iddesig_idnull,没有值进入数据库...

所以我的问题是:如何将dept_iddesig_id的数据获取到Emp表中?

最佳答案

像这样更新你的实体,希望它能起作用:

        @Entity
public class Emp {

@Id
private int e_code;
private String e_name;
private int salary;

@ManyToOne(fetch = FetchType.EAGER, optional = false)
@JoinColumn(name = "dep_id ", nullable = false)
private Dep dep;

@ManyToOne(fetch = FetchType.EAGER, optional = false)
@JoinColumn(name = "desig_id ", nullable = false)
private Desig desig;
getter setter
...
}

关于java - 如何使用rest api插入hibernate中的表,并且该表2列是另一个表的外键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60182063/

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