Ejemplo de uso de las Specifications de Spring Data para poder realizar queries con filtros dinámicos en función de los parámetros de la request.
Adicionalmente se añade la anotación @EntityGrapth para optimizar los accesos a la BBDD.