1
resposta

Aula - 2.5 - Duas chamadas de cadastro de produtos no banco de dados

Olá,

Consegui realizar todos os passos da segunda parte do curso, porém me "servidor" está recebendo duas requisições para inserção de dados na tabela produto. Fiz alguns testes para verificar as chamadas para o navegador e do navegador para o servidor, mas não vi nada de estranho.

Saída no Console: ( Para 3 tentativas)

Produto [titulo=TDD no Mundo Real, descricao=teste, paginas=1]
Hibernate: insert into Produto (descricao, paginas, titulo) values (?, ?, ?)
Produto [titulo=null, descricao=null, paginas=0]
Hibernate: insert into Produto (descricao, paginas, titulo) values (?, ?, ?)
Produto [titulo=Produt 2, descricao=teste, paginas=2]
Hibernate: insert into Produto (descricao, paginas, titulo) values (?, ?, ?)
Produto [titulo=null, descricao=null, paginas=0]
Hibernate: insert into Produto (descricao, paginas, titulo) values (?, ?, ?)
Produto [titulo=teste 3, descricao=teste 3, paginas=3]
Hibernate: insert into Produto (descricao, paginas, titulo) values (?, ?, ?)
Produto [titulo=null, descricao=null, paginas=0]
Hibernate: insert into Produto (descricao, paginas, titulo) values (?, ?, ?)

casadocodigo - produto:

mysql> select * from produto;
+----+-----------+---------+-------------------+
| id | descricao | paginas | titulo            |
+----+-----------+---------+-------------------+
|  1 | teste     |       1 | TDD no Mundo Real |
|  2 | NULL      |       0 | NULL              |
|  3 | teste     |       2 | Produt 2          |
|  4 | NULL      |       0 | NULL              |
|  5 | teste 3   |       3 | teste 3           |
|  6 | NULL      |       0 | NULL              |
+----+-----------+---------+-------------------+
6 rows in set (0.00 sec)

Tive de realizar uma modificação no Url de conexão com o banco de dados, mas não acredito que esteja relacionado com o problema.

DriverManagerDataSource dataSource = new DriverManagerDataSource();
        dataSource.setUsername("root");
        dataSource.setPassword("root");
        dataSource.setUrl("jdbc:mysql://localhost:3306/casadocodigo?useTimezone=true&serverTimezone=UTC&sslMode=DISABLED ");
        dataSource.setDriverClassName("com.mysql.jdbc.Driver");
        factoryBean.setDataSource(dataSource);

Gostaria de saber se algum já passou por isso ou se pode me indicar o que possa estar causando esse problema.

Obrigado.

1 resposta

Oi Mateus, tudo bem?

Como está seu ProdutosController?

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