Skip to content

Instantly share code, notes, and snippets.

View filipeovercom's full-sized avatar
🏠
My God is not dead!

Filipe Damasceno Abreu filipeovercom

🏠
My God is not dead!
View GitHub Profile
@filipeovercom
filipeovercom / AbstractService.java
Created June 3, 2019 23:24
Serviço abstrato - Spring Boot+MongoDB
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update;
import org.springframework.data.mongodb.repository.MongoRepository;
import java.io.Serializable;
import java.lang.reflect.InvocationTargetException;
@filipeovercom
filipeovercom / TurmaRepositoryImpl.java
Last active October 10, 2018 00:03
Exemplo de uma consulta utilizando QueryDSL onde o resultado é transformado para um DTO.
@Override
public Page<TurmaListagemDTO> findAllByParams(ConsultaTurmasParams params, Pageable pageable) {
QTurma turma = QTurma.turma;
BooleanBuilder conditions = new BooleanBuilder();
if (!Objects.isNull(params)) {
params.getNome()
.ifPresent(nome -> conditions.and(turma.nome.startsWithIgnoreCase(nome)));
params.getDisciplina().ifPresent(disciplina -> conditions.and(turma.disciplina.uuid.eq(disciplina)));
params.getCurso().ifPresent(curso -> conditions.and(turma.curso.uuid.eq(curso)));