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

从具有Hibernate条件的关系中投影实体

岳迪
2023-03-14

作为条件表达式的结果,我很难获得相关实体对象的列表。我有两个具有多对多关系的对象

getDetachedCriteria(ObjectAObjectB.class)
.setFetchMode("objectB", FetchMode.JOIN)
.setProjection(Projections.property("objectB"));

但是,这并不像预期的那样有效,因为投影API似乎只支持投影标量属性,而不支持投影实体对象。是否可以通过投影或其他标准API指定这种类型的选择?

共有1个答案

费明诚
2023-03-14

使用Hibernate标准API无法做到这一点。在HQL或JPA2标准API中可以做到这一点,但不能使用Hibernate标准API。

 类似资料:
  • 问题内容: 我很难获得标准表达式的结果相关实体对象的列表。我有两个具有多对多关系的对象,例如ObjectA <-> ObjectB,其中ObjectA的单个实例可以绑定到ObjectB的多个实例,而ObjectB的实例可以绑定到ObjectA的多个实例。该关系存储在您的典型联接表中,但是由于遗留原因,对象模型是这样的,因此ObjectB无法直接知道其与ObjectA的关系。我正在尝试创建一个条件表

  • 问题内容: 我很难获得标准表达式的结果相关实体对象的列表。我有两个具有多对多关系的对象,例如ObjectA <-> ObjectB,其中ObjectA的单个实例可以绑定到ObjectB的多个实例,而ObjectB的实例可以绑定到ObjectA的多个实例。该关系存储在您的典型联接表中,但是由于遗留原因,对象模型是这样的,因此ObjectB不直接知道它与ObjectA的关系。我正在尝试创建一个条件表达

  • 但是如果可能的话,我想避免这种情况,因为它迫使我定义n个构造函数,为我在投影中想要的n个字段组合定义n个构造函数。

  • 我正在使用Hibernate标准和投影来获得不同的值,如下所示: 我正在使用带有投影的结果转换器来获取不同值的列表

  • 我在JPA中使用Micronaut数据,并且有两个实体。第一个是< code >配方: 第二个是,它指的是 : 现在我想在API中为DTO提供属性,但不提供整个实体,因为它包含MonyToOne和OneToMany关系,在这种情况下不需要。因此,我为此创建了投影 DTO: 并将< code>listAll()方法添加到< code > parse error repository 中: 但似乎Mi