Olá Rodrigo.
Estou refatorando o código, desta vez utilizando o banco de dados PostGreSQL. Nesse caso, para armazenar a senha como um hashcode, usei a seguinte lógica no construtor da classe Usuário:
public Usuario(String nome, String email, String senha) {
this.nome = nome;
this.email = email;
this.senha = new BCryptPasswordEncoder().encode(senha);
}
Mas não alterei mais nada em nenhuma outra parte do código.
@PostMapping
public ResponseEntity<?> cadastrar(@Valid @RequestBody Usuario usuario) {
usuarioRepository.save(usuario);
UsuarioDTO usuarioDTO = new UsuarioDTO(usuario);
return new ResponseEntity<>(usuarioDTO, HttpStatus.CREATED);
}
Porém esta lógica não funciona, e a senha armazenada no banco é a mesma que insiro no Postman. Quando chamamos o método cadastrar, passando os campos nome, email, e senha, não é este construtor (com os mesmos 3 argumentos) que é chamado para instanciar a classe?