Deje que Spring haga el trabajo pesado con las cosas que ya ha construido para esto...
El verdadero truco es:mongoTemplate.getConverter().read(Foo.class, obj);
Por ejemplo, al usar un DBCursor -
while (cursor.hasNext()) {
DBObject obj = cursor.next();
Foo foo = mongoTemplate.getConverter().read(Foo.class, obj);
returnList.add(foo);
}
http://revelfire.com/spring-data-mongodb-convert-from-raw-query-dbobject/