@caterina
Jongo - это библиотека Java, которая предоставляет удобный способ работы с MongoDB на основе объектно-ориентированного подхода. Вот как можно преобразовать запрос из shell MongoDB в Jongo:
1
|
db.users.find({name: "John"}) |
Пример эквивалентного запроса в Jongo:
1 2 |
MongoCollection<User> users = jongo.getCollection("users").withDocumentClass(User.class); Iterable<User> johns = users.find("{name: 'John'}").as(User.class); |
1
|
db.users.find({age: {$gt: 18}}) |
Пример эквивалентного запроса в Jongo:
1 2 |
MongoCollection<User> users = jongo.getCollection("users").withDocumentClass(User.class); Iterable<User> adults = users.find("{age: {$gt: #}}", 18).as(User.class); |
1
|
db.users.find({name: /joh?n/i}) |
Пример эквивалентного запроса в Jongo:
1 2 |
MongoCollection<User> users = jongo.getCollection("users").withDocumentClass(User.class); Iterable<User> johans = users.find("{name: #}", Pattern.compile("joh?n", Pattern.CASE_INSENSITIVE)).as(User.class); |
1
|
db.users.find({age: {$in: [18, 21, 25]}}) |
Пример эквивалентного запроса в Jongo:
1 2 |
MongoCollection<User> users = jongo.getCollection("users").withDocumentClass(User.class); Iterable<User> users = users.find("{age: {$in: #}}", Arrays.asList(18, 21, 25)).as(User.class); |
Обратите внимание, что в Jongo вы можете использовать строки формата JSON в качестве аргументов запроса, а также передавать параметры в запросы с помощью символа # и соответствующего значения в списке аргументов.