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

Dúvida no Ex. 1 da Aula 5 - Connection Pool e Datasources

Olá a todos... Vocês poderiam me passar um exemplo de como fazer um pool com o PostgresSql?

2 respostas

Witcare , Bom dia !!

acredito que com postgresSql , você precisará baixar a biblioteca para java do postgresSql.

depois você terá que alterá a url e o usuário para postgres no connection pool a acredito que o código ficará desse jeito :

package br.com.caelum.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import javax.sql.DataSource;

import org.hsqldb.jdbc.JDBCPool;


public class ConnectionPool {

    private DataSource dataSource;

    public ConnectionPool() {
        JDBCPool pool = new JDBCPool();
        pool.setUrl("jdbc:postgresql://localhost:5432/loja-virtual");
        pool.setUser("postgres");
        pool.setPassword("");
        this.dataSource = pool;

    }

    Connection getConnection() throws SQLException {
        //Connection connection = DriverManager.getConnection("jdbc:postgresql://localhost:5432/loja-virtual","postgres","");

        Connection connection = dataSource.getConnection();
        return connection;
    }

}

espero ter ajudado , Bons Estudos

solução!
Olá Celso, obrigado pela ajuda....
O código que eu fiz com o postgres é assim:
import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;
import org.postgresql.jdbc2.optional.PoolingDataSource;

public class Database {

    private DataSource dataSource;

    Database(){
    PoolingDataSource  pool = new PoolingDataSource();

    pool.setUrl("jdbc:postgresql://localhost:5432/loja-virtual");
    pool.setUser("postgres");
    pool.setPassword("maeda123");

    this.dataSource =  pool;
    }

     Connection getConnection() throws SQLException {
        //Connection connection = DriverManager.getConnection("jdbc:postgresql://localhost:5432/loja-virtual","postgres","maeda123");
        Connection connection = dataSource.getConnection();
        return connection;
    }

}

No lugar de 'JDBCPool' usa-se 'PoolingDataSource' .... Não estava dando certo porque o driver que estava usando postgresql-9.4-1200.jdbc41.jar. Quando mudei para postgresql-9.4-1203.jdbc4.jar o código funcionou corretamente. Então fica o código aqui para quem tiver a mesma dúvida

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