java - JPAmappedBy不持久化具有关系的实体

标签 java hibernate jpa

例如,我有以下实体: 房间实体:

@Entity
public class Room extends Base {

@OneToMany(mappedBy = "room")
private List<Person> persons;
//getters and setters
}

以及 Person 实体:

@Entity
public class Person extends Base {

@ManyToOne
private Room room;

private String name;
//getters and setters
}

如果我将人员添加到房间的人员列表中然后坚持,则会添加房间,但不会添加人员。我想,将 mappedBy 参数添加到 OneToMany 注释中就足够了,但是..我还应该做什么?

最佳答案

您需要在@OneToMany上设置CascadeType=PERSIST或ALL。并且还在 Person 类中设置 room 变量以填充 Person 表中的外键。

关于java - JPAmappedBy不持久化具有关系的实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35001815/

相关文章:

java - 如何读取FTL文件中的JSONArray?

java - 从 QueryDSL 中的自定义表中选择

hibernate - 如何使用初始数据填充 Web 应用程序

java - Hibernate 注解映射、JPA 孤儿删除

java - 尝试插入重复的键行时,HibernateTemplate Save 不抛出异常

java - 使用 JPA 从 java map 对象自动生成表的自定义列名称

java - 如何将数组列表的内容写入文本文件?

java - 如何将带有特殊字符 (UTF-8) 的 HTML 页面保存到 txt 文件

java - JPQL 数组中的 where 查询

java - HQL Hibernate INNER JOIN