Musisz podzielić interfejs repozytorium na dwa.
Pierwsza - "Niestandardowe" zawierające metody implementowane ręcznie to:
public interface TopRepositoryCustom {
long getPublishedTopoCount();
}
Drugi dla wygenerowanych metod:
public interface TopRepository extends MongoRepository<Topo, String>, TopRepositoryCustom {
@Query("{'name':?0}")
Topo findByName(String name);
}
Następnie wystarczy zaimplementować pierwsze repozytorium i pamiętać o przestrzeganiu właściwej konwencji nazewnictwa. Zobacz więcej na:niestandardowa implementacja spring-data mongodb PropertyReferenceException i Dane wiosenne MongoDB Dokumentacja niestandardowych implementacji