hibernate - Hibernate-OneToMany 关系
问题描述
@Entity
@Table(name= "employee1100")
public class Employee {
@Id
@Column(name="eid")
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@Column(name="ename")
private String name;
@OneToMany(mappedBy="employee",cascade=CascadeType.ALL)
private Set<Laptop> laptop;
@Entity
@Table(name="laptop1100")
public class Laptop {
@Id
@Column(name="laptop")
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@Column(name="lapdetails")
private String details;
@ManyToOne
@JoinColumn(name="empId")
private Employee employee;
Laptop lap1=new Laptop();
Laptop lap2=new Laptop();
lap1.setDetails("Lenovo");
lap2.setDetails("HP");
Employee e1=new Employee();
lap1.setEmployee(e1);
lap2.setEmployee(e1);
Set<Laptop> laptop=new HashSet<Laptop>();
laptop.add(lap1);
laptop.add(lap2);
e1.setName("Rahul");
e1.setLaptop(laptop);
session.save(e1);
我只能看到此处插入了一个与员工记录相对应的笔记本电脑对象,有问题吗?
解决方案
通常,当您使用 Set 接口时,您应该覆盖 hashCode() 和 equals() 方法。您是否尝试过 List 而不是 Set 界面?
推荐阅读
- docker-compose - Docker-compose:与 selinux 一起使用
- javascript - 如何在 chart.js 中制作曲线条形图或曲线柱形图?
- angular - Firebase 通知适用于后台和前台
- android - 全屏活动中的状态栏高度
- android - 如何在android studio中创建这样的微调器?
- swift - 选择新按钮后 UICollectionView 不释放内存
- python - 如何将最低键和最低值配对在一起(它应该按从小到大的顺序上升)?
- neo4j - Neo4j 查询执行时间:多次执行同一个查询时,似乎只有第一个是正确的
- tensorflow - 密集层对不同识别任务的一般用途
- python - 在 Python 3.7 中选择性地模拟模块