带有运行时变量的MongoDB QueryBuilder方法
我试图创建一个返回BasicDBObject“queryDB”的函数,如下所示: 这给了我以下信息:带有运行时变量的MongoDB QueryBuilder方法,mongodb,query-builder,Mongodb,Query Builder,我试图创建一个返回BasicDBObject“queryDB”的函数,如下所示: 这给了我以下信息: Exception in thread "main" com.mongodb.QueryBuilder$QueryBuilderException: No operand for key:field1 at somepackage.QueryBuilder.get(QueryBuilder.java:442) at somepackage.MongoClass.buildQuery(MongoC
Exception in thread "main" com.mongodb.QueryBuilder$QueryBuilderException: No operand for key:field1
at somepackage.QueryBuilder.get(QueryBuilder.java:442)
at somepackage.MongoClass.buildQuery(MongoClass.java:72)
at somepackage.MongoClass.getDocsOf(MongoClass.java:44)
at somepackage.App.main(App.java:39)
有什么办法可以防止或解决这个问题吗?在
和
子句中,您正在调用equals()
,它是对象.equals()
方法,而不是查询操作符。尝试将equals()
更改为is()
。当我更新你的代码时,这对我起了作用。不幸的是,这不起作用,当我从终端获得“lang”文档时,我得到25000个,从java代码中,出于某种原因,我只得到1659个
Exception in thread "main" com.mongodb.QueryBuilder$QueryBuilderException: No operand for key:field1
at somepackage.QueryBuilder.get(QueryBuilder.java:442)
at somepackage.MongoClass.buildQuery(MongoClass.java:72)
at somepackage.MongoClass.getDocsOf(MongoClass.java:44)
at somepackage.App.main(App.java:39)