Jak mówi tytuł.Jak mogę filtrować dane w spokojny sposób przy użyciu Springa?
I w zasadzie chciałbym zrobić żądania jak
/api/todos/?completed=eq.true&created_at=lt.1486462109399
Czy istnieje gotowy spring way
osiągnięcia takiego? Coś podobnego do mechanizmu Page/Pageable byłoby świetne.
Jeśli nie istnieje, myślę, że mógłbym go zaimplementować przy użyciu zapytań o Kryteria Hibernacji & Argument Re-solvers. Zasadniczo pozwala mi napisać moje kontrolerów jak
@GetMapping
public ResponseEntity<Page<TodoDTO>> listAll(Criteria criteria, Pageable pageable)
{
Page<Todo> todos = todoService.listAll(criteria, pageable)
...
}
Niestandardowy Argument rezolwer byłby odpowiedzialny za obracanie ciąg kwerendy do kryteriów. Nie jestem do końca pewien, jak sobie z tym poradzić w ramach usługi, ale to jest kierunek, w którym spróbuję to zaimplementować.
Czy to byłoby dobre podejście? Wszelkie zalecenia? (Wszyscy zakładają, że nie ma już gotowego mechanizmu dla takich już).
Twoja pomoc jest bardzo cenna.
Ostatni raz miałem ten sam problem, nie mogłem znaleźć sprężynę jedynym rozwiązaniem. Możesz jednak sprawdzić, jak to osiągnąć, używając funkcji Fiql/rsql z Oto dobry [blog] (http://www.baeldung.com/rest-api-search-language-rsql-fiql) na ten temat. – gkatzioura
Minął rok od zadawania tego pytania i nie wiem, gdzie jesteś, ale to powinno odpowiedzieć na twój problem: http://www.baeldung.com/rest-api-search-language-spring-data- dane techniczne Możesz również sprawdzić to pytanie: https://stackoverflow.com/questions/20280708/filtering-database-rows-with-spring-data-jpa-and-spring-mvc – leventunver