如何在 mongo 模板的不同功能中使用 DBObject 查询?
How to use DBObject Query in distinct function of mongo template?
我想找到具有某些查询条件的字段的不同值。我的代码是..
public List searchservice(String th_type) {
Query query = new Query();
query.addCriteria(Criteria.where("th_type").regex(th_type));
List list = operations.getCollection("doclist").distinct("th_type", query);
return list;
}
在 mongo 模板中定义了一个不同的函数
mongoTemplate.getCollection(collection).distinct(key, query)
我的代码出错了,因为我使用的是简单的查询对象而不是 DBObject 查询。我如何在这里使用 DBObject 查询?
为此使用BasicDBObject:
public List searchservice(String th_type) {
BasicDBObject dbObject = new BasicDBObject();
dbObject.append("th_type", th_type);
DBCollection dBCollection = operations.getCollection("doclist");
List list = dBCollection.distinct("th_type", dbObject);
return list;
}
更新:
使用正则表达式:
BasicDBObject regexQuery = new BasicDBObject();
regexQuery.put("th_type", new BasicDBObject("$regex", th_type));
List list = operations.getCollection("doclist").distinct("th_type",regexQuery);
我想找到具有某些查询条件的字段的不同值。我的代码是..
public List searchservice(String th_type) {
Query query = new Query();
query.addCriteria(Criteria.where("th_type").regex(th_type));
List list = operations.getCollection("doclist").distinct("th_type", query);
return list;
}
在 mongo 模板中定义了一个不同的函数
mongoTemplate.getCollection(collection).distinct(key, query)
我的代码出错了,因为我使用的是简单的查询对象而不是 DBObject 查询。我如何在这里使用 DBObject 查询?
为此使用BasicDBObject:
public List searchservice(String th_type) {
BasicDBObject dbObject = new BasicDBObject();
dbObject.append("th_type", th_type);
DBCollection dBCollection = operations.getCollection("doclist");
List list = dBCollection.distinct("th_type", dbObject);
return list;
}
更新:
使用正则表达式:
BasicDBObject regexQuery = new BasicDBObject();
regexQuery.put("th_type", new BasicDBObject("$regex", th_type));
List list = operations.getCollection("doclist").distinct("th_type",regexQuery);