当前位置: 首页 > 知识库问答 >
问题:

Hibernate集合在persist后为空

令狐高洁
2023-03-14

JPA实体batchevent具有OneTomany关系:

@OneToMany(mappedBy = "owningBatch")
private Set<Event> containingEvents;

事件批处理有多个关系:

@ManyToOne
@JoinColumn(name = "BATCH_ID")
private Batch owningBatch;

在创建新实例并持久化它之后,ContainingEvents仍然是Null。但当我使用空的set:

@OneToMany(mappedBy = "owningBatch")
private Set<Event> containingEvents = Sets.newHashSet();

DAO由Spring Data JPA实现。

Spring Boot 2.0.4.Release
Spring Data JPA 2.0.4.Release
Hibernate 5.2.17.Final
Hibernate JPA 2.1 1.0.2.Final

共有1个答案

殷宾白
2023-03-14

您需要在@OneTomany批注中添加CascadeType,例如:

@OneToMany(mappedBy = "owningBatch", cascade = CascadeType.ALL)
private Set<Event> containingEvents;

event类必须包含:

@ManyToOne
@JoinColumn(name = "batch_id", referencedColumnName = "id")
private Batch owningBatch;
 类似资料:
  • 问题内容: 我一直遇到这个问题: 我想让hibernate管理一个表示集合集合的表。例如: 地图地图 套装清单 清单地图 例如,我希望能够代表这一点: 作为一个表: 没有自定义的hibernate代码似乎是不可能的,我不介意。但是我希望有人对自定义代码的外观有所指导。 我应该扩展AbstractPersistentCollection吗? CompositeUserType? 可以管理多个表是否正

  • 问题内容: 我在父类和子类之间定义了双向的一对多关系。我正在寻找执行一个查询,以便我可以在bean中返回一个父对象及其子对象的子集。 我想要实现的输出是: 我想过滤父母的ID和孩子的年龄列。我尝试了多种查询组合以获取所需的输出。 以下内容很接近,但没有将子级分组到我定义的ParentChildWrapper bean中的集合中。我得到的结果是对象列表,每个孩子有1个实例与年龄过滤器匹配: 我还尝试

  • 问题内容: 在具有两种类型的实体(父级和子级)的场景中: 父母-@OneToMany Collection孩子; 默认值为对子级集合进行延迟加载。这种模式对少数儿童非常有效,但是如果这个数字很大,这似乎是不可持续的。因此,在某些情况下,我认为孩子的数量会很大,因此我使用了分页的服务方法(例如“ getChildren(父父母,int偏移量,int计数)”)。 问题是:这是处理此类情况的最佳方法吗?

  • 我需要弄清楚如何使用定义为以下内容的枚举参数列表应用基于注释的筛选: 所以我的如下所示: 我见过很多关于如何对单个枚举值进行条件查询和筛选的问题,但还没有关于对一组枚举值进行筛选的问题。是否有一种方法可以显式地强制转换单个值?

  • 问题内容: 我在持久层中存在多对多关联的问题。我的情况如下: 一个用户可以具有多个角色,并且一个角色可以具有与其连接的多个用户。在测试期间,我遇到了一个奇怪的行为。我创建了角色对象和几个用户对象。该角色已设置给每个用户。此后,使用DAO保存了用户。然后,加载一个用户,以检查他是否在保存用户对象之前获得了传递给他的角色。呼叫用户表明角色设置正确。 要检查反方向是否也起作用,可以使用角色DAO从数据库

  • 问题内容: 谁能告诉我vs hibernate的优势是什么? 问题答案: 从此论坛帖子 定义明确。它使瞬态实例持久化。但是,它不能保证将标识符值立即分配给持久性实例,分配可能在刷新时发生。规范没有这么说,这是我的问题。 还保证如果在事务边界之外调用它,则不会执行INSERT语句。这在具有扩展会话/持久性上下文的长时间对话中很有用。 需要类似的方法。 不能保证相同,它返回一个标识符,如果必须执行IN