开发者社区> 问答> 正文

java中通过DBObject对象给MongoDB的find()方法查询数据。

我在java web工程中使用

DBObject todayWLCriteria = new BasicDBObject();
        todayWLCriteria.put("shop_id", utilsService.getAtb(request).getShopId());
        todayWLCriteria.put("sale_channel", "$in:[1,2,3,4]}");   //这里该如何传值
        List<DBObject> todayWLObjects = mongoPersist.getMongoCollection(RtSellerRegion_h).find(todayWLCriteria).sort(new BasicDBObject("no", -1)).toArray();

来查询mongo中的数据,但是sale_channel 中需要传入四个值1,2,3,4
我知道直接在Mongo 中可以使用$in来查询,像这样db.tianyc02.find({age:{$in:[11,22]}})
但是,在java中的OBject对象中,我该怎么把这个四个值传入sale_channel中,我代码中写的那样程序无法正确查询,求大神指教。

展开
收起
落地花开啦 2016-02-25 11:29:19 6454 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    你可以这样查询一下:

    BasicDBList saleChannel = new BasicDBList();
            saleChannel.add(2);
            saleChannel.add(3);
            saleChannel.add(4);
            saleChannel.add(9);
            todayWLCriteria.put("sale_channel", new BasicDBObject("$in",saleChannel));
    2019-07-17 18:47:20
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载