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

Anúncios

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

Teste de Controllers no Spring Boot

Teste de Controllers são aqueles que validam o comportamento do gerenciamento entre as camadas de modelo(Model) e visão(View), com isso, essa camada não deve testar regra de negócio, e sim conversões de formatos do model para view, disponibilização de API, consumo de API, entre outros. Pensando nisso, o Spring Boot disponibiliza algumas anotações para facilitar … Continue lendo Teste de Controllers no Spring Boot

Mensageria no Spring Boot

Como de costume o Sprint Boot vem facilitando a configuração dos projetos, no contexto de mensageria ficou ainda mais simples configurar o projeto para integrar como um sistema mensageria, onde com poucas configurações na classe de configuração do Spring e alguns parâmetros via properties é possível conectar a aplicação a um servidor de mensagem. A … Continue lendo Mensageria no Spring Boot

Criando uma validação de Ano/Modelo com Regex

Há várias formas de fazermos validação, umas delas é com Regex, a qual é uma excelente opção em cenários que recebemos o input de dados no formato de texto e não conseguimos ter um alto controle sobre o recebimento do dado. Abaixo, vou demostrar uma criar uma validação para um texto (uma String) com o … Continue lendo Criando uma validação de Ano/Modelo com Regex

Padrão Chain of Responsibility

Objetivo desse padrão é encadear objetos receptores sem que haja uma dependência entre eles. Olha para imagem abaixo, o handler é uma interface para suas implementações concretas que possuí o método requestHandler, que define qual vai ser o sucessor da implementação atual, por isso o nome Chain of Responsibility, pois o objeto atual tem o … Continue lendo Padrão Chain of Responsibility

Padrão Strategy

O padrão de projeto Strategy tem como objetivo encapsular diferentes implementações de algoritmos, de forma que possa ser chamado a implementação conforme a estratégia do cliente. Conforme a imagem abaixo, o contexto contem uma interface da estratégia, que define qual implementação de ser requisitada. Com isso, as classes ConcreteStrategyA, ConcreteStrategyB e ConcreteStrategyC são classes concretas … Continue lendo Padrão Strategy