Tôi có một dịch vụ REST đơn giản truy cập dữ liệu với Spring boot CrudRepository
.Lọc dữ liệu với Spring boot CrudRepository
kho này đã thực hiện pagination và khả năng sắp xếp như thế này:
public interface FlightRepository extends CrudRepository<Flight, Long> {
List<Flight> findAll(Pageable pageable);
}
Gọi nó:
Sort sort = new Sort(direction, ordering);
PageRequest page = new PageRequest(xoffset, xbase, sort);
return flightRepo.findAll(page);
Tôi muốn thêm cũng lọc để kho này (ví dụ trở lại chỉ tổ chức với id > 13 AND id < 27
). CrudRepository dường như không hỗ trợ chức năng này. Có cách nào để đạt được điều này hay tôi cần phải sử dụng cách tiếp cận khác nhau?
Cảm ơn mọi mẹo!
Điều này có thể được kết hợp với Pageable không? Tôi đã hy vọng rằng tôi có thể xác định điều này trong một số đối tượng và chuyển nó vào chức năng. Đây không phải là rất tiện dụng khi muốn một số tính linh hoạt (người dùng có thể chỉ định trường tùy chỉnh để được lọc và tôi sẽ phải chỉ định một chức năng như thế này cho mọi kết hợp có thể ...) – Smajl
vâng, bạn có thể sử dụng simpy 'List findByIdBetween (Bắt đầu dài , Long end, Pageable pageable) ' –
pezetem
cũng khuyên bạn nên thay đổi giao diện mở rộng thành' PagingAndSortingRepository' .. –