Jeśli mówimy o Wiosna Danych PagingAndSortingRepository można ustawić domyślny rozmiar strony za pomocą @PageableDefault
na metodzie kontrolera następująco:
public String listClients(@ModelAttribute FilterForm form, Model model, WebRequest request, @PageableDefault(sort = { "surname",
"forename", "address.town" }, value = 50) Pageable pageable) {
}
Albo można skonfigurować globalna wartość domyślna, przy użyciu poniższej konfiguracji w Spring, jak pokazano poniżej w konfiguracji XML i Java.
Należy pamiętać, że nowsze wersje danych sprężynowych korzystają z indeksowania stron na podstawie zera, podczas gdy starsze wersje używały 1 dla pierwszej strony. Jeśli UI stronicowania biblioteka oczekuje 1 jako pierwszej stronie następnie można ustawić właściwość oneIndexedParameters true:
http://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/web/PageableHandlerMethodArgumentResolver.html#setOneIndexedParameters-boolean-
public void setFallbackPageable (stronicowalnej fallbackPageable)
Konfiguruje stronicowalnej być stosowane jako fallback w przypadku, gdy nie można odwołać się do PageableDefault lub PageableDefaults (ten ostatni jest obsługiwany tylko w trybie starszej wersji). Można znaleźć znaleziony przy parametrze metody do rozstrzygnięcia. Jeśli ustawisz wartość null, , pamiętaj, że metody kontrolera zostaną przekazane do nich w postaci wartości NULL w przypadku, gdy w żądaniu nie będzie danych dostępnych. Zauważ, że zrobienie tego będzie wymagać podania bota strony i parametru wielkości z prośbami , ponieważ nie będzie dostępnych ustawień domyślnych dla żadnego z parametrów .
Parametry: fallbackPageable - Pageable do użycia jako ogólny fallback.
W XML to wygląda następująco następnie:
<mvc:annotation-driven>
<mvc:argument-resolvers>
<bean class="org.springframework.data.web.PageableHandlerMethodArgumentResolver">
<property name="oneIndexedParameters" value="true"/>
<property name="fallbackPageable">
<bean class="org.springframework.data.domain.PageRequest">
<constructor-arg name="page" value="1" />
<constructor-arg name="size" value="10" />
</bean>
</property>
</bean>
</mvc:argument-resolvers>
</mvc:annotation-driven>
W Java Config to wygląda jak poniżej:
@Configuration
public class WebConfig extends WebMvcConfigurerAdapter {
@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
PageableHandlerMethodArgumentResolver resolver = new PageableHandlerMethodArgumentResolver();
resolver.setOneIndexedParameters(true);
resolver.setFallbackPageable(new PageRequest(1, 20);
argumentResolvers.add(resolver);
super.addArgumentResolvers(argumentResolvers);
}
}
nie jestem zaznajomiony z każdym PagingAndSortingRepository w JPA. Jeśli jest to pytanie w Spring Data, proszę zaznaczyć, że tak jest. –