2016-06-23 33 views
0

给出一个包含有一个MongoDB的集合以下几点:如何mongojack使用elemmatch在Java中

{ 
"_id" : ObjectId("561c04bde4b05625eaaaf691"), 
"groupName" : "Group1", 
"Rights" : [ 
    "RIGHTS_1", 
    "RIGHTS_2" 
], 
"users" : [ 
    "User 1" 
]} 


,{ 
    "_id" : ObjectId("561c04bde4b05625eaaaf692"), 
    "groupName" : "Group2", 
    "Rights" : [ 
     "RIGHTS_3", 
     "RIGHTS_4" 
    ], 
    "users" : [ 
     "User 2" 
]} 

我有这样

db.collection.find({Rights:{$elemMatch:{$eq:"RIGHTS_1"}}}) 

查询,寻找有权利匹配RIGHTS_1组。

但是,我不知道如何编写使用MongoJack等价查询,因为在MongoJack,我有一些像

DBQuery.elemMatch(collection.RIGHTS_FIELD, DBQUERY_GOES_HERE)) 

但必须的DBQuery有一个字段和值,并且似乎并不允许在数组中进行相等性检查。我检查了其他帖子和文档,但我似乎无法找到解决方案。 MongoJack支持这种查询吗?我感谢帮助!

回答

0

我真的很笨。

db.collection.find({Rights:{$eq:"RIGHTS_1"}}}) 

是足够的查询和易于实现