Методы Spring Data Query в абстрактном классе - PullRequest
0 голосов
/ 21 мая 2019

Я кодировал этот репозиторий, до сих пор он работал нормально.

@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;
    }
}
...