Make searching and pagination easy with Hibernate ORM using JPQL or SQL
Query-search é uma lib criada para facilitar a implementação de consultas com paginação, construida em cima do ORM Hibernate com uma abordagem padronizada e flexível.
- Paginação com filtros dinamicos
- Suporte a consulta e paginação com query sql
- Retorno de objeto customizado para query nativas
Adicione a dependência no seu projeto
<dependency>
<groupId>com.github.joaquimsn</groupId>
<artifactId>querysearch</artifactId>
<version>0.2.0</version>
</dependency>
- Implemente a classe SearchRepository para prover uma instância do objeto Query
public class SearchRepositoryImpl implements SearchRepository {
...
@Override
public Query getQueryJpql(String jpql) {
return entityManager.createQuery(jpql);
}
@Override
public Query getQueryNativeQuery(String sqlQuery) {
return entityManager.createNativeQuery(sqlQuery);
}
}
- Implemente a classe SearchService
public class SearchServiceImpl implements SearchService {
...
@Override
public SearchRepository getRepository() {
return repository;
}
}
- Agora é só implementar um filtro, use AbstractSpqlSearchFilter para paginação e consultas com sql, ou AbstractJpqlSearchFilter para trabalhar com entidades mapeadas