Po krótkim grzebaniu wymyśliłem następujące rozwiązanie, które jest OK i działa, ale prawdopodobnie można je ulepszyć. Wciąż jestem całkiem nowy w Springu, więc jeśli masz lepszy pomysł, daj mi znać.
W każdym razie, oto on:
Po pierwsze, używamy @Autowired
adnotacja do wprowadzenia bazy MongoTemplate z spring-data-mongodb
@Autowired
MongoTemplate mongoTemplate;
Kiedy już to mamy, możemy użyć go do wykonania kilku zapytań. Zwróć uwagę, że jest to nieco śmierdząca część, ponieważ musisz powiedzieć Springowi, jaki jest typ zwracany, a tak naprawdę to nie podoba…
// Get the distinct stuff from MongoDB
List<String> coll = mongoTemplate.getCollection("mycollection").distinct("myfield");
W powyższym kodzie zauważysz, że zdefiniowałem zmienną typu List o nazwie coll, która używa @Autowired MongoTemplate
zmienna, aby uzyskać kolekcję, a następnie pole używające differ. Jest to analogiczne do db.whatever.distinct("term")
na powłoce Mongo.