Paginación

Hola, Me gustaria saber si existe la manera de hacer paginación con slazy loading, ya que tengo dos ejemplos uno de paginación con botones(next,last,back, etc…) y otro ejemplo de slazy loading, pero con el Scroll.
¿Es posible modificar un slazy loading con botones?

Otra duda, con la paginación de botones, es que cada vez que le doy en siguiente, realiza la petición en la BD pero trae todo el contenido, bueno eso es lo que no se, como puedo ver si trae todo los datos?

Y Es mejor slazyLoading o cache, para ir cargando datos desde un servidor?
Las tablas tiene mas de 2000 rows.
En estos momentos estoy con Vaadin8

Gracias y saludos…

Hola,

Supongo que tus dudas son con respecto al componente
Grid
.


Paginación
es una técnica usada para mostrar grandes cantidades de datos sin cambiar el tamaño del componente que los visualiza.
Lazy loading
es una técnica para demorar la carga de datos hasta el momento en que se necesita (en este caso, hasta el momento en que deben ser visualizados en la UI).

Por lo tanto, sí,
existe la manera de hacerlo
.

No entiendo la pregunta. Si te refieres a si puedes mezclar
paginación basada en scroll
y
paginación basada en botones
, sí es posible. No sé si los add-ons que estes usando lo soportan directamente, pero usando la API de Vaadin Framework podrías implementarlo. Una forma sería cargar los datos por
número
de página (que controlas con los botones) y dejar que el mecanismo automático de lazy loading de
Grid
haga el resto. En este caso habría lazy loading entre la app y la base de datos y el servidor y el navegador.

Eso depende de como estás cargando los datos. En algún punto debes tener una consulta que hace el trabajo. ¿Carga todos los datos? Depende completamente de tu propia implementación.

Díficil saberlo sin conocer los detalles de los requerimientos no funcionales (memoria disponible, usuarios concurrentes, etc.) y la estructura misma de los datos. Lo más probable es que una mezcla de caching y lazy loading sea la mejor estrategia.