#java #spring #mongodb #spring-data #spring-data-mongodb
#java #весна #mongodb #spring-данные #spring-data-mongodb
Вопрос:
Использование весенних данных mongodb
Есть класс для документа mongo
@Document(collection = "Samples")
@CompoundIndexes({...})
public class Sample {
@Id
private String id;
@Index(sparse=true)
private String field1;
@Index(unique=true)
private String field2;
}
Нужен метод для удаления всех записей в коллекции. Для этого я использую
mongoTemplate.dropCollection(Sample.class);
но в этом случае я теряю все индексы в этой коллекции. Поэтому мне нужно воссоздать все индексы заново.
Есть такой метод
this.mongoTemplate.indexOps(Sample.class).ensureIndex(...);
Но мне нужно некоторое определение индекса в качестве параметра, чтобы использовать этот метод.
Есть ли какой-нибудь способ воссоздать все индексы документов, используя аннотации классов?
Комментарии:
1.
this.mongoTempalte.remove(null, Sample.class);
похоже на решение. Но… Я не уверен…2.
this.mongoTemplate.remove(new Query(), Sample.class);
— это работает