@VictorMarcantonio escreveu:
Estou obtendo o seguinte erro ao tentar salvar um usuário utilizando hibernate:
java.lang.IllegalArgumentException: Can not set java.lang.String field com.example.apiadote.model.entity.Usuario.email to com.example.apiadote.model.entity.Usuario.
Segue o código.
entity
@Component @Entity @Table(name="usuario") public class Usuario { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") private Long id; @Column(name="email") private String email; @Column(name="senha") private String senha; public static UsuarioBuilder builder() { return new UsuarioBuilder(); } public Usuario() { } public Usuario(Long id, String email, String senha) { this.id = id; this.email = email; this.senha = senha; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getSenha() { return senha; } public void setSenha(String senha) { this.senha = senha; } }
UsuarioDAO
@Repository public class UsuarioDAOImpl implements UsuarioDAO { @Autowired Usuario usuario; @Override public Usuario createUsuario(Usuario usuario){ Session session = HibernateUtil.getSessionFactory().openSession(); session.beginTransaction(); session.save(usuario); session.getTransaction().commit(); session.close(); System.out.println(usuario); return usuario; }
Service
@Override public Usuario createUsuario(Usuario usuario) { usuario.setEmail(usuario.getEmail()); usuario.setSenha(usuario.getSenha()); usuarioDAO.createUsuario(usuario); return usuario; } ``` Controller ``` @PostMapping @ResponseStatus(HttpStatus.CREATED) public ResponseEntity salvar (@RequestBody UsuarioDTO dto ) { Usuario usuario = Usuario.builder() .email(dto.getEmail()) .senha(dto.getSenha()).build(); try{ Usuario usuarioSalvo = usuarioService.createUsuario(usuario); return new ResponseEntity(usuarioSalvo, HttpStatus.CREATED); }catch (RegraNegocioException e ) { return ResponseEntity.badRequest().body(e.getMessage()); } }
Mensagens: 6
Participantes: 2