2
respostas

Como o objeto é passado da página para a controller?

Pessoal, tudo bem?

Na aula dois de Spring MVCI o metodo public String gravar(String titulo, String descricao, int paginas) é alterado para public String gravar(Produto produto) Eu não entendi como o método sabe que está sendo passado um objeto com 3 atributos, podem me ajudar?

2 respostas

Oi Anderson, tudo bom?

Citando o capitulo 2:

O SpringMVC fará o bind dos names em nosso formulário com os atributos do Produto de agora em diante. Sendo assim, vamos modificar o ProdutosController para recebermos um objeto produto agora.

O método gravar deve ficar assim:

@RequestMapping("/produtos")
public String gravar(Produto produto){
    System.out.println(produto);
    return "/produtos/ok";
}

Ou seja, o processo de bind do controller é quem permite essa funcionalidade. Por baixo dos panos, o Spring vai pegar os names dos forms e criar um produto definindo os valores seguindo o padrão de nomenclatura dos métodos =)

Abraço!

Entendi, André

Obrigado :)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software