У меня есть база данных MongoDB, который имеет набор пользователей, содержащий следующий документ
{
"_id": ObjectId("5161446e03642eab4a818fcd"),
"id": "35",
"userInfo": {
"name": "xyz",
"rollNumber": 121
}
}
Я хочу, чтобы получить все строки, в которых идентификатор больше определенного значения
@GET
@Path("/query")
@Produces({ MediaType.APPLICATION_JSON })
public List<String> getLactionInfo(@QueryParam("from") int from) {
BasicDBObject query = new BasicDBObject();
// check if ids greater than 0
query.put("id", new BasicDBObject("$gt", from));
// get the collection of users
DBCursor cursor = getTable("users").find(query);
List<String> listUsers = new ArrayList<String>();
while (cursor.hasNext()) {
DBObject object = cursor.next();
String id = cursor.next().get("_id").toString();
object.put("_id", id);
String objectToString = object.toString();
listUsers.add(objectToString);
}
return listUsers;
}
Когда я отлаживал свой код, он показывал, что listUsers равно null. Также, когда я вручную запускаю следующий запрос в консоли, я не получаю никаких результатов.
db.users.find({id:{$gt:60}})
Спасибо за помощь, мне было очень глупо пропустить что-то, что t rivial. –