使用吗啡在 mongodb 中进行多重搜索

发布于 2024-12-09 18:53:39 字数 278 浏览 0 评论 0原文

我有两个类:用户和项目。 项目类有一个用户(项目的所有者)。

在搜索方法中,它在方法之后返回用户列表,并且通过该用户列表, 我需要找到包含我拥有的操作系​​统用户列表中一项的用户的所有项目。

为了解决这个问题,我放置了一个 for 并在 for 迭代中为每个用户调用 find (morphia basicDao find 方法),并将结果添加到数组中,然后手动删除重复的项目。

有人知道解决我的问题的更好方法吗?也许吗啡方法可以为我做到这一点......

抱歉英语不好。 :)

I've two classes: User and Project.
The project class have ONE user (the owner of project).

In search method, it returns a list of user after a method, and with this list of users,
i need to find all projects that contains the user of one item of the list os users that i have.

For solve this, i put a for and i call the find (morphia basicDao find method) for each user in for iteration, and the result i added in a array, and manually i remove the duplicated projects.

Someone knows a better method to solve my problemn? Maybe a morphia method that do this for me...

Sorry for bad english. :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

老街孤人 2024-12-16 18:53:39

您可以使用 $in 运算符,即 在线记录。正如您所料,Morphia 的等效项称为 in,也是。

以下是使用 in 的示例:

List<String> userList;
List<Project> projects = Project.find().field("user").in(userList).asList();

You can use the $in operator, which is documented online. As you might expect, Morphia's equivalent is called in, too.

Here's an example of using in:

List<String> userList;
List<Project> projects = Project.find().field("user").in(userList).asList();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文