Pagination
Paging entities with or without filters.
@Collection("customer_repository")
public interface CustomerRepository extends Repository<Customer, UUID> {
List<Customer> pageByCustomerIdNot(int customerId, Pagination pagination);
}public class Application {
public static void main(Stribng[] args) {
// Creating instances
MongoManager mongoManager = new MongoManager();
CustomerRepository repository = mongoManager.create(CustomerRepository.class);
// Saving some entities
for (int i = 0; i < 15; i++) {
Customer customer = Const.createNewCustomer();
customer.setUniqueId(UUID.randomUUID());
customer.setCustomerId(i);
repository.save(customer);
}
// Creating the pagination properties
int entitiesPerPage = 5;
int currentPage = 2;
// Creating the pagination object
Pagination pagination = Pagination.of(entitiesPerPage).page(currentPage);
// Pagination by pageAll without any filter
List<Customer> allCustomersPage = repository.pageAll(pagination);
// Pagination by dynamic method with filter on customer id
List<Customer> customerWithoutIdZeroPage = repository.pageByCustomerIdNot(0, pagination);
}
}Last updated