Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

Spring boot, um dado nao esta sendo armazenado

Estou fazendo uma tela para recebe dados baseado no antigo curso de springboot, mas um dado nao foi nao esta sendo recebido Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

@Controller @RequestMapping("/estacionamento") public class EstacionamentoController {

private List<Cliente> clientes= new ArrayList<>();
@GetMapping
public String carregaPaginaFormulario() {
    
        return "estacionamento/cliente";
    }
@PostMapping
public String cadastraCliente(CadastroCliente dados, Model model) {
    var cliente = new Cliente(dados);
    clientes.add(cliente); // Adicione o cliente à lista de clientes

    System.out.println(clientes); // Agora imprima a lista de clientes
    model.addAttribute("lista", clientes);

    return "estacionamento/listagem";
}


@GetMapping("/listagem")
public String carregaPaginaListagem(Model model) {
    model.addAttribute( "lista", clientes);

    return "estacionamento/listagem";
}
      

}

public class Cliente {

public String nome;
public String dataNascimento;
public String cpf;
public  String email;

@Override
public String toString() {
    return "Nome: " + nome +
           ", Email: " + email +
           ", CPF: " + cpf +
           ", Data de Nascimento: " + dataNascimento;
}

 public Cliente(CadastroCliente dados) {
        this.cpf=dados.cpf();
        this.dataNascimento=dados.datanascimento();
        this.email=dados.email();
        this.nome=dados.nome();
        
    }

}

6 respostas

Olá, tudo bem ?

Possivelmente o problema esta na forma como a informação esta chegando no método cadastraCliente dentro da controller. Consegue verificar como o front esta enviando o CadastroCliente ? pode ser possivel que esteja vindo como null.

package com.example.estacionamento.controller;

public record CadastroCliente(String nome, String datanascimento, String email, String cpf ) {

}

e pra piorar eu deixei isso ai pra la e fui tentar fazer a conexao com o banco de dados

There was an unexpected error (type=Internal Server Error, status=500). could not execute statement [Unknown column 'data_nascimento' in 'field list'] [insert into cliente (cpf,data_nascimento,email,nome) values (?,?,?,?)]; SQL [insert into cliente (cpf,data_nascimento,email,nome) values (?,?,?,?)] org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute statement [Unknown column 'data_nascimento' in 'field list'] [insert into cliente (cpf,data_nascimento,email,nome) values (?,?,?,?)]; SQL [insert into cliente (cpf,data_nascimento,email,nome) values (?,?,?,?)]

e ta dando problema tbm na data de nascimento

Boa noite, esse erro ai normalmente é causado por que a coluna não existe na tela. Você poder dar um "SELECT * from cliente" e subir um print do resultado ? Pode ser tbm que o nome da coluna esteja diferente. Obrigado.

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeBom dia , quando voce disse anteriormente pra ve o front para saber como os dados estao sendo enviados, como seria isso ?

solução!

Problema tava em uma Tag no html