Teste técnico em relação a vaga de back-end do Back Itau, em que consiste em criar uma aplicação que exponha uma api web que valide se uma senha é válida com algumas restrições:
• Nove ou mais caracteres
• Ao menos 1 dígito
• Ao menos 1 letra minúscula
• Ao menos 1 letra maiúscula
• Ao menos 1 caractere especial
Considere como especial os seguintes caracteres: !@#$%^&*()-+
Não possuir caracteres repetidos dentro do conjunto
A lógica dessa api web foi desenvolvida através de variaveis booleanas, em que de ínicio é "false" mas através das estruturas condicionais (ifs) ela se torna verdadeira. Como exemplo, em nosso código ele contém um "for" que percorrerá verificando se a senha digitada contem números retornando "true".
//VETOR DA SENHA
char[] arraySenha = objetoLogin.getSenha().toCharArray();
//VARIAVEIS LÓGICAS
boolean verificarNumero = false, verificarMinusculo = false, verificarMaiusculo = false,
verificarEspecial = false, verificarRepeticao = false, senha = false;
//EXECUÇÃO DO LAÇO DE REPETIÇÃO
for(int x = 0; x < objetoLogin.getSenha().length();x++) {
//ESTRUTURAS CONDICIONAIS
if((arraySenha[x] >= '0') && (arraySenha[x] <= '9')) {
verificarNumero = true;
}
Antes de começar, verifique se você atendeu aos seguintes requisitos:
- Você instalou a versão mais recente de
<JDK Java 11 / IDE Eclipse ou Netbeans / XAMPP / Git e GitHub / MySQL Workbench 8>
- Você tem uma máquina
<Windows / Mac / Linux>
.
Para instalar o itauAPIWEB, siga estas etapas:
Abra o GitBash e clone o repositório para sua máquina:
git clone https://github.com/victorigoleto/itauAPIWEB.git
Para usar itauAPIWEB, abra o XAMPP e a sua IDE de escolha e siga esses passos:
Acione o Apache e o MySQL clicando em Start em ambos
Agora abra sua IDE de escolha e importa o seu projeto clicando em "Existing Maven Projects"
Com seu projeto importado execute a aplicação na classe padrão "LoginApplication" clicando em Run As -> Java Aplication ou Spring Boot App (caso esteja no Spring Tool Suite)
Agora abra o seu navegador web e digite "http://localhost:8080/", irá aparecer o formulario api web
As tratativas de erro foram feitas em HTML/JavaScript com o plugin de alerta SweetAlert2
Para verificar se os dados foram inseridos corretamente, abra o MySQL WorkBench 8 e cria uma nova query executando os seguintes comandos: