Classe ConnectionFactory > Conexão Java com Postgresql

Eai pessoal!

Estou fazendo um projeto em Java, e estou tentando realizar uma conexão com um banco de dados. Estou utilizando o dbeaver como gerenciador de um banco postgresql.

Estou tendo o seguinte erro na execução:

org.postgresql.util.PSQLException: FATAL: password authentication failed for user "root"
	at org.postgresql.core.v3.ConnectionFactoryImpl.doAuthentication(ConnectionFactoryImpl.java:659)
	at org.postgresql.core.v3.ConnectionFactoryImpl.tryConnect(ConnectionFactoryImpl.java:180)
	at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:235)
	at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:49)
	at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:247)
	at org.postgresql.Driver.makeConnection(Driver.java:434)
	at org.postgresql.Driver.connect(Driver.java:291)
	at java.sql.DriverManager.getConnection(DriverManager.java:664)
	at java.sql.DriverManager.getConnection(DriverManager.java:247)
	at connection.ConnectionFactory.getConnection(ConnectionFactory.java:25)
	at teste.Teste.main(Teste.java:11)
null

Pelo o que pesquisei, isso tem relação com o usuário do banco. Eu teria que configurar este usuário no banco de dados, algo assim. Segue a minha classe de conexão:

package connection;

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

public class ConnectionFactory {

    private static final String DRIVER_CLASS = "org.postgresql.Driver";

    private static final String URL = "jdbc:postgresql://localhost:5432/receita_cadastro";
    private static final String username = "root";
    private static final String password = "123456";

    public Connection getConnection(){

        Connection connection = null;

        try{
            Class.forName(DRIVER_CLASS);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        try{
            connection = DriverManager.getConnection(URL, username, password);
            System.out.println(connection);
            connection.setAutoCommit(true);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return connection;
    }

}

Alguém sabe se esse é o real motivo do erro acima? Caso seja isto, como posso solucionar?

Temos duas possíveis causas para isso…

  1. Não existe o user “root” no seu BD;
  2. A senha dele não é 123456.

Revise os usuários cadastrados no seu Postgres.

1 curtida