Я кодировал этот репозиторий, до сих пор он работал нормально.
@Repository
public interface MetricGroupDao extends MongoRepository<MetricGroup, String>
{
Page<MetricGroup> findByTimestampBetweenAndApplication(Date from, Date to, String application, Pageable page);
}
Теперь мне нужно добавить немного более сложный запрос с использованием агрегатов ...
Могу ли я расширить интерфейс MetricGroupDao
, добавив мой метод, а затем реализовать его, добавив только мою новую реализацию в абстрактный класс?Я имею в виду:
Мне нужно добавить этот метод:
Page<MetricGroup> aggregateByDates(Date from, Date to, Pageable page);
Итак:
@Repository
public interface MetricGroupDao extends MongoRepository<MetricGroup, String>
{
Page<MetricGroup> findByTimestampBetweenAndApplication(Date from, Date to, String application, Pageable page);
Page<MetricGroup> aggregateByDates(Date from, Date to, Pageable page);
}
И:
public abstract class MetricGroupExtDao implements MetricGroupDao {
@Override
public Page<MetricGroup> aggregateByDates(Date from, Date to, Pageable page)
{
// my custom implementation
return null;
}
}