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

Capturando erros de parser no XmlJavaTypeAdapter

Em uma manutenção em um webservices SOAP identifiquei um comportamento curioso do framework que faz parsing de xml, um comportamento que facilita no desenvolvimento mas pode ocasionar em problemas na consistência dos dados. Quando utilizamos um conversor através da anotação @XmlJavaTypeAdapter e ocorre algum erro dentro desse conversor esse erro não para todo processo e … Continue lendo Capturando erros de parser no XmlJavaTypeAdapter

Utilizando Bower para gerenciar dependências web em projetos Java

O bower é um gerenciador de pacotes similar ao maven com foco em dependências web, por exemplo em bibliotecas como jquery e bootstrap. Com isso, é possível gerenciar bibliotecas web e até mesmo frameworks JS em projetos Java web utilizando o Bower. Equivalente ao pom.xml, o bower tem o bower.json, o qual faz a configuração … Continue lendo Utilizando Bower para gerenciar dependências web em projetos Java