Comment faire pour configurer le Printemps de démarrage de la pagination à partir de la page 1 et non 0
de démarrage(1.4.0) "Paginable" pour la pagination.Il fonctionne très bien sans aucun problème.Mais, par défaut, la valeur de page commence à partir de "0", mais dans le front-end de la valeur de page commence à partir de "1". Si il ya une approche standard pour incrémenter la valeur au lieu d'incrémenter manuellement le numéro de la page dans le code?
public Page<Device> find(DeviceFindCommand deviceFindCommand, Pageable pageable){
//page = 0 //Actual is 0, Expected increment by 1.
}
Toute aide doit être appréciable.
Après la mise en œuvre Alan avoir des réponses sur les questions suivantes,
1) je suis en mesure d'accéder à zéro page qui renvoie à la première page(je ne sais pas c'est problème ou pas, mais je veux obtenir une meilleure clarté).
http://localhost:8180/api/v1/books/?page=3&taille=2
Réponse
{
"content": [
{
"id": "57da9eadbee83fb037a66029",
.
.
.
}{
.
.
.
}
],
"last": false,
"totalElements": 5,
"totalPages": 3,
"size": 2,
"number": 2, //strange always getting 1 less than page number.
"sort": null,
"first": true,
"numberOfElements": 2
}
2) "nombre": 2, dans la réponse a toujours un de moins que le numéro de page.Il devrait reprendre la page en cours d'index.
Spring-boot 1.4.0
Avant la fin de l'aide de Braise de 2,7 s
Avez-vous jamais résoudre le "0" en "nombre"? Je le vois ainsi.
vous pouvez vérifier le Alan Foin réponse pourrait vous aider...sauf que je ne pouvais pas trouver une autre façon..."
OriginalL'auteur VelNaga | 2016-10-05
Vous devez vous connecter pour publier un commentaire.
Printemps Boot se fera à l'aide de Données du Printemps sous les couvertures.
Le Printemps de classe de Données, vous devez configurer est la suivante:
org.springframework.les données.web.PageableHandlerMethodArgumentResolver
et en particulier la méthode suivante:
http://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/web/PageableHandlerMethodArgumentResolver.html#setOneIndexedParameters-boolean-
Cela vous permettra de vous utiliser d'INTERFACE utilisateur actuelle de pagination qu'est c'est à dire avec la première page = 1.
Dans une application de Démarrage, je pense que la config peut ressembler à quelque chose comme:
Désolé mais je ne comprends pas la question: Vous voulez utiliser 1 en fonction de pagination mais appeler "/books?page=0&size=2"
permettez-moi de modifier ma question, de sorte que vous obtiendrez une meilleure clarté
J'ai édité mon post merci de me guider pour résoudre ce
Avez-vous trouvé la solution pour cela?
OriginalL'auteur Alan Hay
Si vous utilisez le Printemps de Démarrage 2.X, vous pouvez passer d'
WebMvcConfigurerAdapter
à des propriétés de l'application. Il y a un ensemble de propriétés pour configurer paginable:Mais s'il vous plaît rappelez-vous que même si vous modifiez la
one-indexed-parameter
la page de réponse (PageImpl
classe) permettra d'obtenir des résultats avec base zéro du numéro de page. Il pourrait être un peu trompeur.OriginalL'auteur Przemek Nowak
Je suis travailler avec Spring boot, et Vue.js et j'ai eu ce problème 🙂
J'ai beaucoup de documents que j'ai mis en œuvre
Pageable
comme ceci :Première fois que je l'appel
document/all
et j'obtiens la page 0. Ensuite, chaque fois que j'appel une page de mon avant la fin de l'application de lapage = page -1;
.Alors, quand j'appelle la page 1 de front-end cela va de la page 0 dans le back-end etc.
OriginalL'auteur Grechka Vassili
D'obtenir un meilleur résultat, vous devez étendre RepositoryRestMvcConfiguration, comme ci-dessous
Alors, vous bénéficiez de tous les liens et les informations de pagination correcte à l'exception de "numéro", qui est un de moins.
Voir le résultat pour la page d'=1,
OriginalL'auteur Shafiul