2017-09-25 10 views
0

J'utilise un paging dans mon application. Voici mon code:Spring data - paging - get numéro de page de l'article

final Pageable pageable = new PageRequest(page, this.getHistoryPageSize(), new Sort(Sort.Direction.ASC, "date")); 
    final List<History> pagedHistory = historyRepository.findPagedHistoryByTenantAndDateBetween(tenant, start, end, pageable); 

Ma question serait maintenant s'il est possible d'obtenir le numéro de page d'un élément pour que je puisse montrer cette page.

Répondre

0

Utilisation procédé getPageNumber() de Pageable:

int pageNumber = pageable.getPageNumber(); 

Exemple:

@GetMapping("/") 
public String users(
     @RequestParam(value = "q", required = false) String query, 
     Model model, 
     @PageableDefault(size = PAGE_SIZE, sort = SORT, direction = ASC) Pageable pageable 
) { 
    Page<User> users = repo.findByNameAndEmail((query != null) ? query : "", pageable); 
    model.addAttribute("users", users); 
    model.addAttribute("query", query); 

    model.addAttribute("totalPages", users.getTotalPages()); 
    model.addAttribute("current", pageable.getPageNumber()); 
    model.addAttribute("previous", pageable.previousOrFirst().getPageNumber()); 
    model.addAttribute("next", pageable.next().getPageNumber()); 

    return "users"; 
} 

source code