joaquimsn / query-search

Make searching and pagination easy with Hibernate ORM using JPQL or SQL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Query-search

Make searching and pagination easy with Hibernate ORM using JPQL or SQL

Build Status Coverage Status Quality Gate Maven Central

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.

Principais características

  • Paginação com filtros dinamicos
  • Suporte a consulta e paginação com query sql
  • Retorno de objeto customizado para query nativas

Instalação

Adicione a dependência no seu projeto

<dependency>
  <groupId>com.github.joaquimsn</groupId>
  <artifactId>querysearch</artifactId>
  <version>0.2.0</version>
</dependency>

Como usar

  1. 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);
	}
}
  1. Implemente a classe SearchService
public class SearchServiceImpl implements SearchService {
	
	...
	
	@Override
	public SearchRepository getRepository() {
		return repository;
	}
}
  1. Agora é só implementar um filtro, use AbstractSpqlSearchFilter para paginação e consultas com sql, ou AbstractJpqlSearchFilter para trabalhar com entidades mapeadas

Veja um exemplo

Clique aqui para acessar os exemplos

About

Make searching and pagination easy with Hibernate ORM using JPQL or SQL

License:MIT License


Languages

Language:Java 100.0%