2011-10-11 6 views
2

J'ai deux classes: Utilisateur et Projet. La classe de projet a UN utilisateur (le propriétaire du projet).Recherche multiple en mongodb avec morphia

Dans la méthode de recherche, il renvoie une liste d'utilisateur après une méthode, et avec cette liste d'utilisateurs, je dois trouver tous les projets qui contient l'utilisateur d'un élément de la liste des utilisateurs que j'ai. Pour résoudre ce problème, je mets un for et j'appelle la méthode find (morphia basicDao find) pour chaque utilisateur pour l'itération, et le résultat est ajouté dans un tableau, et manuellement je supprime les projets dupliqués. Quelqu'un connaît une meilleure méthode pour résoudre mon problème?

Quelqu'un connaît une meilleure méthode pour résoudre mon problème? Peut-être une méthode morphia qui fait ça pour moi ...

Désolé pour le mauvais anglais. :)

Répondre

2

Vous pouvez utiliser l'opérateur $in, qui correspond à documented online. Comme vous pouvez vous y attendre, Morphia's equivalent est également appelé in.

Voici un exemple d'utilisation in:

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

ce travail de. Merci –

Questions connexes