gpt4 book ai didi

Hibernate 多对多 HQL 和标准

转载 作者:行者123 更新时间:2023-12-01 06:37:53 25 4
gpt4 key购买 nike

我有以下场景:

USERS   1.1   ROLE   \*.\*   MODULE   \*.\*   INTERFACE

单个用户“JOHN”具有一个角色,并且该角色具有多个模块,并且单个模块具有多个接口(interface)。我在hibernate中使用了运行良好的注释。当我得到用户对象时,我得到了角色,通过使用角色对象,我得到了模块列表,在模块对象中,我得到了接口(interface)。

简单来说,当我获得用户时,我获得了包含用户的界面,但是我如何通过 HQL 和标准获得与用户不相关的界面。例如

我通过 SQL 获取接口(interface)数据 IN 和 NOT IN 但我想使用 HQL & Criteria 获取数据。

提前致谢。

最佳答案

HQL 也支持 IN 和 NOT IN。在 HQL...

要找出与用户相关的所有接口(interface),给定用户 ID:

select ui from USERS u join u.role.module.interface ui where u.id =:userId;

找出所有接口(interface) 不是 与用户有关,给定用户 ID:
select i from INTERFACE i where i NOT IN (select ui from USERS u join u.role.module.interface ui where u.id =:userId);

关于Hibernate 多对多 HQL 和标准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13305334/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com