当前位置: 首页 > 面试题库 >

选择不存在Hibernate OneToOne关联的实体

夏华藏
2023-03-14
问题内容

我有两个具有双向@OneToOne映射的类。

Class A {
@OneToOne(fetch = FetchType.Lazy, mappedBy="a")
private B b;
}

Class B {
@OneToOne(fetch = FetchType.Eager)
private A a;
}

我需要编写代码来检索B的所有实例,这些实例没有与之关联的A实例。我还需要为所有没有B的A编写类似的查询。

我努力了:

Criteria criteria = getSession().createCriteria(B.class)
criteria.add(Restrictions.isNull("a")

但这似乎总是返回null。有什么想法吗?


问题答案:

这对两个方向都应该起作用:

Criteria criteria = session.createCriteria(B.class, "b");
criteria.createAlias("b.a", "a", Criteria.LEFT_JOIN);
criteria.add(Restrictions.isNull("a.id"));


 类似资料:
  • 问题内容: 我认为我要沿着这条路走正确的路…请忍受,因为我的SQL并不是最出色的 我试图查询数据库以从一个表中选择所有单元格中某些单元格不存在的所有内容。那没有多大意义,但我希望这段代码会 因此,基本上我有一张桌子,上面列出了员工及其详细信息。然后是另一个表,其中包含一些其他详细信息,包括其名称。在eotm_dyn表中没有名称的地方,这意味着它们没有条目,我想确切地知道它们是谁,或者换句话说,确切

  • 问题内容: 我正在aws上运行django测试服务器,并且刚刚安装了django-userena,当我尝试单击“提交”以注册用户时,收到以下消息: 关系“ django_site”不存在第1行:…“ django_site”。“域”,“ django_site”。“名称”来自“ django_si … 我不太确定这里出了什么问题。我做了一些研究并将其添加到已安装的应用程序中,但是仍然出现错误。我将

  • 问题内容: 我有一个关于ORACLE的问题,我写了一个PLSQL CODE来检查一个表是否存在,如果存在,那么我从该表中选择一些东西。 如果(表存在)从表中选择…。 问题是,即使表条件不存在且select语句从不执行,即使表不存在,我也总是会收到错误消息。 我认为这是因为在编译时检查了我的代码:“ select from ..”,如果表不存在,则会打印错误。我该如何解决这样的问题?..这是我的代码

  • 我首先尝试了用户图,但是由于我们要获取组,所以我尝试了组图。同样的例外。 问题是,没有简单的方法向生成的查询添加,因为我不知道应该加入关联的哪些属性。我必须加载Entitygraph,遍历它和任何子图,并生成正确的join子句。 关于查询生成的更多细节: queryException:查询指定了连接提取,但是提取的关联的所有者不在选择列表中

  • 此代码崩溃: 原因:组织。postgresql。util。PSQLException:错误:关系“订阅”不存在 spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect Springjpa。数据库平台=组织。冬眠地方话PostgreSQL10方言Spring。jpa。冬眠ddl auto=创建拖放

  • 问题内容: 我有两个mysql表-销售表: 和一个项目表: sales表包含每个 ItemID的 多个记录-每个 SaleWe​​ek一个 。我想通过加入两个表来选择出售的所有商品,如下所示: 但是,这将基于每个 SaleWe​​ek* 的多个条目返回多个 ItemId 值。我可以做一个单独的选择,只返回一个 ItemID 吗?-我不想查询最新的 SaleWe​​ek, 因为有些项目可能没有最新的