Query Search

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

License

License

Categories

Categories

Search Business Logic Libraries
GroupId

GroupId

com.github.joaquimsn
ArtifactId

ArtifactId

querysearch
Last Version

Last Version

0.2.0
Release Date

Release Date

Type

Type

jar
Description

Description

Query Search
Make searching and pagination easy with Hibernate ORM using JPQL or SQL
Project URL

Project URL

https://github.com/joaquimsn/query-search/
Source Code Management

Source Code Management

http://github.com/joaquimsn/query-search

Download querysearch

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.joaquimsn/querysearch/ -->
<dependency>
    <groupId>com.github.joaquimsn</groupId>
    <artifactId>querysearch</artifactId>
    <version>0.2.0</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.joaquimsn/querysearch/
implementation 'com.github.joaquimsn:querysearch:0.2.0'
// https://jarcasting.com/artifacts/com.github.joaquimsn/querysearch/
implementation ("com.github.joaquimsn:querysearch:0.2.0")
'com.github.joaquimsn:querysearch:jar:0.2.0'
<dependency org="com.github.joaquimsn" name="querysearch" rev="0.2.0">
  <artifact name="querysearch" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.joaquimsn', module='querysearch', version='0.2.0')
)
libraryDependencies += "com.github.joaquimsn" % "querysearch" % "0.2.0"
[com.github.joaquimsn/querysearch "0.2.0"]

Dependencies

compile (1)

Group / Artifact Type Version
org.hibernate : hibernate-entitymanager jar 5.1.0.Final

test (4)

Group / Artifact Type Version
junit : junit jar 4.12
org.mockito : mockito-all jar 2.0.2-beta
com.google.inject : guice jar 4.1.0
com.h2database : h2 jar 1.4.196

Project Modules

There are no modules declared in this project.

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

Versions

Version
0.2.0
0.1.0