2016-11-04 8 views
6

Chciałbym osiągnąć następujące zapytanie mongo w Javie.Jak ukryć kolumnę w mongodb używając sterowników Java?

db.getCollection('document').find({ "$and": [ 
{"storeId":"1234"}, 
{"tranDate" : {"$gte":new Date("Sat,01 Oct 2016 00:00:00 GMT"), 
       "$lte":new Date("Mon,31 Oct 2016 00:00:00 GMT")}} 
] 
}, 
{"_id" : 0}) 

Mam następujący kod Java, ale nie jestem pewien jak dodać logikę zatajania

List<Bson> conditions = new ArrayList<>(); 
conditions.add(eq("field1", "value1")); 
conditions.add(eq("field2", "value2")); 
Bson query = and(conditions); 
FindIterable<Document> resultSet = db.getCollection("document").find(query); 

muszę dodać { „_id”: 0} w logice kodu do pomiń pole "_id". Uprzejmie proszę mi powiedzieć, jak mogę to osiągnąć.

Odpowiedz

2

Możesz spróbować czegoś takiego.

import static com.mongodb.client.model.Projections.excludeId; 

FindIterable<Document> resultSet = db.getCollection("document").find(query).projection(excludeId()); 

Wykluczenie innych dziedzinach

import static com.mongodb.client.model.Projections.fields; 

FindIterable<Document> resultSet = db.getCollection("document").find(query).projection(
fields(exclude("fieldname", "fieldvalue"))); 

Pełną listę prognoz.

http://api.mongodb.com/java/3.0/?com/mongodb/client/model/Projections.html http://mongodb.github.io/mongo-java-driver/3.0/builders/projections/

+0

to działa dobrze ... Dzięki za wielką informacji wspólne! –