Bom dia,
O meu MySQL, registra uma Primary Key (codigo), porém não registra as informações do meu Form (HTML), como: nome completo, cpf, etc…
Vocês sabem o que pode ser o erro?
Segue foto do meu MySQL:
Meu Model:
@Entity
public class Titulo {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY )
private int codigo;
@Column(name = "celular", length = 25)
private int celular;
@Column(name = "cep", length = 20)
private int cep;
@Column(name = "cidade", length = 150)
private String cidade;
@Column(name = "cpf", length = 30)
private int cpf;
@Column(name = "data_negociacao", length = 30)
private String dataNegociacao;
@Column(name = "descricao", length = 250)
private String descricao;
@Column(name = "email", length = 250)
private String email;
@Column(name = "endereco", length = 250)
private String endereco;
@Column(name = "nome_completo", length = 250)
private String nomeCompleto;
@Column(name = "nome_mae", length = 250)
private String nomeMae;
@Column(name = "placa", length = 20)
private String placa;
@Column(name = "renavam", length = 40)
private String renavam;
@Column(name = "rg", length = 25)
private int rg;
@Enumerated(EnumType.STRING)
private StatusTitulo status;
@Column(name = "telefone_fixo", length = 30)
private int telefoneFixo;
@Column(name = "veiculo1", length = 200)
private String veiculo1;
@Column(name = "veiculo2", length = 200)
private String veiculo2;
@Column(name = "veiculo3", length = 200)
private String veiculo3;
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public int getCelular() {
return celular;
}
public void setCelular(int celular) {
this.celular = celular;
}
public int getCep() {
return cep;
}
public void setCep(int cep) {
this.cep = cep;
}
public String getCidade() {
return cidade;
}
public void setCidade(String cidade) {
this.cidade = cidade;
}
public int getCpf() {
return cpf;
}
public void setCpf(int cpf) {
this.cpf = cpf;
}
public String getDataNegociacao() {
return dataNegociacao;
}
public void setDataNegociacao(String dataNegociacao) {
this.dataNegociacao = dataNegociacao;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
public String getNomeCompleto() {
return nomeCompleto;
}
public void setNomeCompleto(String nomeCompleto) {
this.nomeCompleto = nomeCompleto;
}
public String getNomeMae() {
return nomeMae;
}
public void setNomeMae(String nomeMae) {
this.nomeMae = nomeMae;
}
public String getPlaca() {
return placa;
}
public void setPlaca(String placa) {
this.placa = placa;
}
public String getRenavam() {
return renavam;
}
public void setRenavam(String renavam) {
this.renavam = renavam;
}
public int getRg() {
return rg;
}
public void setRg(int rg) {
this.rg = rg;
}
public StatusTitulo getStatus() {
return status;
}
public void setStatus(StatusTitulo status) {
this.status = status;
}
public int getTelefoneFixo() {
return telefoneFixo;
}
public void setTelefoneFixo(int telefoneFixo) {
this.telefoneFixo = telefoneFixo;
}
public String getVeiculo1() {
return veiculo1;
}
public void setVeiculo1(String veiculo1) {
this.veiculo1 = veiculo1;
}
public String getVeiculo2() {
return veiculo2;
}
public void setVeiculo2(String veiculo2) {
this.veiculo2 = veiculo2;
}
public String getVeiculo3() {
return veiculo3;
}
public void setVeiculo3(String veiculo3) {
this.veiculo3 = veiculo3;
}
@Override
public int hashCode() {
return Objects.hash(celular, cep, cidade, codigo, cpf, dataNegociacao, descricao, email, endereco, nomeCompleto,
nomeMae, placa, renavam, rg, status, telefoneFixo, veiculo1, veiculo2, veiculo3);
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Titulo other = (Titulo) obj;
return celular == other.celular && cep == other.cep && Objects.equals(cidade, other.cidade)
&& codigo == other.codigo && cpf == other.cpf && Objects.equals(dataNegociacao, other.dataNegociacao)
&& Objects.equals(descricao, other.descricao) && Objects.equals(email, other.email)
&& Objects.equals(endereco, other.endereco) && Objects.equals(nomeCompleto, other.nomeCompleto)
&& Objects.equals(nomeMae, other.nomeMae) && Objects.equals(placa, other.placa)
&& Objects.equals(renavam, other.renavam) && rg == other.rg && status == other.status
&& telefoneFixo == other.telefoneFixo && Objects.equals(veiculo1, other.veiculo1)
&& Objects.equals(veiculo2, other.veiculo2) && Objects.equals(veiculo3, other.veiculo3);
}
@Override
public String toString() {
return "Titulo [codigo=" + codigo + ", celular=" + celular + ", cep=" + cep + ", cidade=" + cidade + ", cpf="
+ cpf + ", dataNegociacao=" + dataNegociacao + ", descricao=" + descricao + ", email=" + email
+ ", endereco=" + endereco + ", nomeCompleto=" + nomeCompleto + ", nomeMae=" + nomeMae + ", placa="
+ placa + ", renavam=" + renavam + ", rg=" + rg + ", status=" + status + ", telefoneFixo="
+ telefoneFixo + ", veiculo1=" + veiculo1 + ", veiculo2=" + veiculo2 + ", veiculo3=" + veiculo3 + "]";
}
}
Meu Form:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8"/>
<title>Cadastro de Clientes</title>
<link rel="stylesheet" type="text/css" href="/css/bootstrap.min.css"/>
<link rel="stylesheet" type="text/css" href="/css/style.css"/>
</head>
<body>
<form class="form-horizontal" method="POST" action="/titulos">
<div class="alert alert-sucess" th:if="${#strings.isEmpty(mensagem)}">
<span th:text="${mensagem}">Cadastro Salvo com Sucesso!</span>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Novo Cadastro de Cliente:</h3>
</div>
<br>
<div class="panel-body">
<div class="form-group">
<div for="nome_completo" class="col-sm-2 control-label"> Nome Completo:</label>
<input type="text" class="form-control" id="nome_completo"/>
</div>
</div>
<div class="form-group">
<div for="cpf" class="col-sm-2 control-label"> CPF:</label>
<input type="text" class="form-control" id="cpf"/>
</div>
</div>
<div class="form-group">
<div for="rg" class="col-sm-2 control-label"> RG:</label>
<input type="text" class="form-control" id="rg"/>
</div>
</div>
<div class="form-group">
<div for="endereco" class="col-sm-2 control-label"> Endereço:</label>
<input type="text" class="form-control" id="endereco"/>
</div>
</div>
<div class="form-group">
<div for="cep" class="col-sm-2 control-label"> CEP:</label>
<input type="text" class="form-control" id="cep"/>
</div>
</div>
<div class="form-group">
<div for="cidade" class="col-sm-2 control-label"> Cidade:</label>
<input type="text" class="form-control" id="cidade"/>
</div>
</div>
<div class="form-group">
<div for="nome_mae" class="col-sm-2 control-label"> Nome da Mãe:</label>
<input type="text" class="form-control" id="nome_mae"/>
</div>
</div>
<div class="form-group">
<div for="celular" class="col-sm-2 control-label"> Celular:</label>
<input type="text" class="form-control" id="celular"/>
</div>
</div>
<div class="form-group">
<div for="telefone_fixo" class="col-sm-2 control-label"> Telefone Fixo:</label>
<input type="text" class="form-control" id="telefone_fixo"/>
</div>
</div>
<div class="form-group">
<div for="email" class="col-sm-2 control-label"> Email:</label>
<input type="text" class="form-control" id="email"/>
</div>
</div>
<div class="form-group">
<div for="veiculo1" class="col-sm-2 control-label"> Veiculo 1:</label>
<input type="text" class="form-control" id="veiculo1"/>
</div>
</div>
<div class="form-group">
<div for="veiculo2" class="col-sm-2 control-label"> Veiculo 2:</label>
<input type="text" class="form-control" id="veiculo2"/>
</div>
</div>
<div class="form-group">
<div for="veiculo3" class="col-sm-2 control-label"> Veiculo 3:</label>
<input type="text" class="form-control" id="veiculo3"/>
</div>
</div>
<div class="form-group">
<div for="placa" class="col-sm-2 control-label"> Placa:</label>
<input type="text" class="form-control" id="placa"/>
</div>
</div>
<div class="form-group">
<div for="renavam" class="col-sm-2 control-label"> Renavam:</label>
<input type="text" class="form-control" id="renavam"/>
</div>
</div>
<div class="form-group">
<div for="data_negociacao" class="col-sm-2 control-label"> Data de Negociação:</label>
<input type="text" class="form-control" id="data_negociacao"/>
</div>
</div>
<div class="form-group">
<label for="status" class="col-sm-2 control-label">Status</label>
<div class="col-sm-2">
<select class="form-control" name="status">
<option value="PENDENTE">Pendente</option>
<option value="PENDENTE">Compra</option>
<option value="PENDENTE">Venda</option>
<option th:each="status : ${todosStatusTitulo}" th:value="${status}" th:text="${status.descricao}"></option>
</select>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary">Salvar</button>
</div>
</div>
</div>
</div>
</form>
<script src="/js/bootstrap.min.js"></script>
</body>
</html>
Meu Controller:
@Controller
@RequestMapping("/titulos")
public class TituloController {
@Autowired
private Titulos titulos;
@RequestMapping("/novo")
public ModelAndView novo() {
ModelAndView mv = new ModelAndView("CadastroTitulo");
return mv;
}
@RequestMapping(method = RequestMethod.POST)
public ModelAndView salvar(Titulo titulo) {
titulos.save(titulo);
ModelAndView mv = new ModelAndView("CadastroTitulo");
mv.addObject("mensagem", "Cadastro salvo com sucesso!");
return mv;
}
@ModelAttribute("todosStatusTitulo")
public List<StatusTitulo> todosStatusTitulo() {
return Arrays.asList(StatusTitulo.values());
}
}
Obrigado.