1
resposta

Desafio

Como foi deixado como desafio, tentei fazer e fiz do seguinte modo:

Extraí a execução do código inteiro, assim só preciso instanciar o novo objeto e passar os valores.

Espero feedback.

        Produto produto = new Produto ("Lixadeira", "Philco", 184.90);
            Produto produto2 = new Produto ("Sanduicheira", "Mondial", 120.90);

            insercaoProduto(conexao, produto);
            insercaoProduto(conexao, produto2);

            System.out.println(produto);
            System.out.println(produto2);

        }
    }

    private static void insercaoProduto(Connection conexao, Produto produto) throws SQLException {
        try (PreparedStatement pst = conexao.prepareStatement(
                "INSERT INTO PRODUTO (NOME, DESCRICAO, PRECO) "
                + "VALUES (?, ?, ?)", Statement.RETURN_GENERATED_KEYS)) {

            pst.setString(1, produto.getNome());
            pst.setString(2, produto.getDescricao());
            pst.setDouble(3, produto.getPreco());
            pst.execute();

            try (ResultSet rs = pst.getGeneratedKeys()) {
                while (rs.next()) {
                    produto.setCodigo_produto(rs.getInt(1));
                }
            }
        }
    }

E essa foi a saída:

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

1 resposta

Felipe, boa tarde. Vc levou tudo pra uma única classe?

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