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

ConnectionPool cannot be resolved to a type

Ao tentar compilar meu programa estou aparecendo com o erro: "Exception in thread "main" java.lang.Error: Unresolved compilation problem: ConnectionPool cannot be resolved to a type at br.com.caelum.jdbc.TestaInsercaoProduto.main(TestaInsercaoProduto.java:16)" Imagino que seja algo bem besta, mas não estou conseguindo resolver, alguém consegue me ajudar?

package br.com.caelum.jdbc;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import br.com.caelum.jdbc.modelo.Produto;

public class TestaInsercaoProduto {

    public static void main(String[] args) throws SQLException {
        Produto mesa = new Produto("Mesa Azul", "Mesa com 4 pés");

        try (Connection con = new ConnectionPool().getConnection()) {
            String sql = "insert into Produto (nome, descricao) values(?, ?)";
            try (PreparedStatement stmt = con.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS)) {
                stmt.setString(1, mesa.getNome());
                stmt.setString(2, mesa.getDescricao());
                stmt.execute();

                try(ResultSet rs = stmt.getGeneratedKeys()){
                    int id = rs.getInt("id");
                    mesa.setId(id);
                }
            }
        }

    }

}
11 respostas

Mostra todo o erro que aparece no console !!!

A mensagem é a que eu coloquei acima:

"Exception in thread "main" java.lang.Error: Unresolved compilation problem: ConnectionPool cannot be resolved to a type at br.com.caelum.jdbc.TestaInsercaoProduto.main(TestaInsercaoProduto.java:16)"

Coloca tua conexão para a gente da uma olhada !!

Obrigado por responder.

A única importação que faço no meu programa é o Produto model. Como está abaixo:

package br.com.caelum.jdbc.modelo;

public class Produto {
    private Integer id;
    private String nome;
    private String descricao;

    public Produto(String nome, String descricao) {
        super();
        this.nome = nome;
        this.descricao = descricao;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getDescricao() {
        return descricao;
    }

    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    public void setId(Integer id) {
        this.id = id;
    }

}

A conexão é uma biblioteca import java.sql.Connection. Eu não alterei nada.

Faz tempo que eu não programo em java mais dá uma olhada no classPath do teu projeto se tudo está ok. Com essa API de conexão !!! Valeu !!!

Aparentemente está correto, não consigo resolver este problema.

Oi Vítor,

O arquivo hsqldb.jar está no seu classpath?

Abs!

Sim Leonardo,

Adicionei como foi ensinado nas aulas.

Obrigado!

Oi Vitor, resolveu o problema?

Abs!

Ainda não Leonardo, estou procurando e não encontro o problema.

solução!

O erro foi meu, passou despercebido na atividade que era pra mudar o nome da classe de Database para ConnectionPool. Desculpem.

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