Transformando collections em Map com Stream no Java 8

Quase todos os dias precisamos lidar com transformações de dados em aplicações Java, dessa forma, a partir do Java 8 na API de Stream, esses processos de transformações se tornaram mais fluentes com os conceitos de programação funcional, onde as coleções do Java receberam o método .stream que inicia fluxo de operações nos elementos visando … Continue lendo Transformando collections em Map com Stream no Java 8

Rest no Java EE 7

A partir do Java EE 7, com o lançamento do JAX-RS 2.0 na especificação JSR-339 construir APIs Rest no Java EE se tornou muito mais simples, onde, com poucas anotações é possível disponibilizar serviços Rest. A biblioteca responsável pela criação de webservices com Rest no Java EE é jax-rs, que é representado pela dependência javax.ws.rs-api: … Continue lendo Rest no Java EE 7

Criando validações de Bean Validation customizadas

Bean Validation é uma especificação Java para tratar validações de dados de forma centralizada, pois as validações são inseridas no próprio modelo através de anotações, assim possibilitando a consistência das informações em diferentes camadas além de possuir integrações com outras especificações como JSF, JPA, Hibernate e JAX-RS. O Bean Validation já fornece uma série de … Continue lendo Criando validações de Bean Validation customizadas

Criando diferentes estruturas de versionamento de scripts SQLs no Flyway

O flyway é uma excelente ferramenta para versionamento de scripts de banco de dados. Por padrão, ele utiliza a tabela schema_version para fazer o gerenciamento dos scripts executados, no entanto, podemos precisar utilizar mais que uma estrutura de versionamento por exemplo: pode ser preciso versionar os scripts por cliente ou separar scripts de estrutura e … Continue lendo Criando diferentes estruturas de versionamento de scripts SQLs no Flyway

Profiles no Spring Boot

Profiles é mais uma das facilidades que o Spring Boot traz no seu conjunto de características. Os profiles são um tipo de configuração para ambientes, por exemplo profiles de desenvolvimento, homologação e produção. Para configurar os profiles são dois passos: 1- Criar os arquivos application.properties 2- Configurar a propriedade spring.profiles.active dentro do application.properties Arquivos application.properties Por padrão, … Continue lendo Profiles no Spring Boot

Utilizando MongoDB com Spring Data e Spring Boot

Um dos benefícios do Spring Data é a integração com diversos conceitos de provedores de dados, ou seja, o framework não se limite apenas aos padrões Java JPA e JDBC o Spring Data possui diversos módulos de integração com tecnologias como: MongoDB, Redis, Cassandra, entre outros, além de módulos estendidos pela comunicado como Elasticsearch e … Continue lendo Utilizando MongoDB com Spring Data e Spring Boot

Removendo “abstract Service/Repository ” proprietários com Spring Data

Geralmente em projetos JavaEE/Spring criamos classes para abstrair métodos comuns de acesso ao banco de dados, como no exemplo demonstrado na figura a seguir, com o objetivo de ganharmos a centralização dessas implementações para uma melhor reusabilidade, no entanto, por serem classes proprietárias no sistema há o risco de alterações indevidas ou de bugs com … Continue lendo Removendo “abstract Service/Repository ” proprietários com Spring Data