Conexão com o banco de dados Postgresql

5 respostas
B
Pessoal estou tentando me conectar com o banco de dados mas não estou conseguindo. segue o código
package br.com.web.DAO;

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

public class conexao {
	
	  static String status ="";//variavel que vai informar o status do banco
	  
	  public static Connection getConnection(){
		  Connection conn =null; //crio uma variavel para conexao
		  
		  try{
			  /* Aqui e o driver do seu banco
			   *  na linha a seguir estamos carregando o Driver para conexao
			   */
			  
			  Class.forName("org.postgresql.Driver").newInstance();
			  
			  /*ponto importante se usar um usuario diferente de root verifique os privilegios deste com o BD. 
			   */
			  
			  String url = "jdbc:postgresql://localhost/agenda_telefone,root,senha";
			  conn = DriverManager.getConnection(url);
			  
			  //se ocorrer tudo bem, ou seja se conectar a linha a seguir e executada
			  status = "Connection opened";
			  
		  }catch(SQLException e){
			  status = e.getMessage();
			  System.out.println("Erro ao se conectar com o banco erro -> " +e);
		  }catch(ClassNotFoundException e){
			  status = e.getMessage();
			  System.out.println("Erro ao carregar as classes do banco erro -> " +e);
		  }catch(Exception e){
			  status = e.getMessage();
			  System.out.println("Erro -> " +e);
		  }
		return conn;
	  }
	  
	
}
da a seguinte mensagem de erro -> Erro ao se conectar com o banco erro -> org.postgresql.util.PSQLException: O servidor pediu autenticação baseada em senha, mas nenhuma senha foi fornecida.
classe que eu chamo ela para ver se estar funcionando
package br.com.web.DAO;

public class testaConexao {

	 
	public static void main(String[] args) {
		conexao.getConnection();
		System.out.println(conexao.status);
		 

	}

}

5 Respostas

B

http://jdbc.postgresql.org/documentation/80/connect.html

A maneira correta de usar uma string de conexão inline para o PostgreSQL:

String url = "jdbc:postgresql://servidor/banco?user=usuario&password=senha";
D

Tenta da seguinte forma…

String url = "jdbc:postgresql://localhost/agenda_telefone";  
String user = "root";
String senha = "senha";
conn = DriverManager.getConnection(url,user,senha);
B
Bruno Laturner fiz da forma que vc me sugeriu
try{
			  /* Aqui e o driver do seu banco
			   *  na linha a seguir estamos carregando o Driver para conexao
			   */
			  
			  Class.forName("org.postgresql.Driver").newInstance();
			  
			  /*ponto importante se usar um usuario diferente de root verifique os privilegios deste com o BD. 
			   */
			  String url = "jdbc:postgresql://localhost:8081/agenda_telefone?user=root&password=administrador";   
			  conn = DriverManager.getConnection(url);
			  
			  //se ocorrer tudo bem, ou seja se conectar a linha a seguir e executada
			  status = "Connection opened";
			  
		  }catch(SQLException e){
			  status = e.getMessage();
			  System.out.println("Erro ao se conectar com o banco erro -> " +e);
		  }catch(ClassNotFoundException e){
			  status = e.getMessage();
			  System.out.println("Erro ao carregar as classes do banco erro -> " +e);
		  }catch(Exception e){
			  status = e.getMessage();
			  System.out.println("Erro -> " +e);
		  }
		return conn;
	  }
	  
	
}
mas deu o seguinte erro -> Erro ao se conectar com o banco erro -> org.postgresql.util.PSQLException: A tentativa de conexão falhou. A tentativa de conexão falhou.
e fiz da forma que o dmachado sugeriu;
String url = "jdbc:postgresql://localhost:8081/agenda_telefone";    
		  String user = "root";  
		  String senha = "administrador";  
		  
		  
		  try{
			  /* Aqui e o driver do seu banco
			   *  na linha a seguir estamos carregando o Driver para conexao
			   */
			  
			  Class.forName("org.postgresql.Driver").newInstance();
			  
			  /*ponto importante se usar um usuario diferente de root verifique os privilegios deste com o BD. 
			   */
			  //String url = "jdbc:postgresql://localhost:8081/agenda_telefone?user=root&password=administrador";   
			  conn = DriverManager.getConnection(url,user,senha);
			  
			  //se ocorrer tudo bem, ou seja se conectar a linha a seguir e executada
			  status = "Connection opened";
			  
		  }catch(SQLException e){
			  status = e.getMessage();
			  System.out.println("Erro ao se conectar com o banco erro -> " +e);
		  }catch(ClassNotFoundException e){
			  status = e.getMessage();
			  System.out.println("Erro ao carregar as classes do banco erro -> " +e);
		  }catch(Exception e){
			  status = e.getMessage();
			  System.out.println("Erro -> " +e);
		  }
		return conn;
	  }
	  
	
}
mas tbm ocorreu o seguinte erro - > Erro ao se conectar com o banco erro -> org.postgresql.util.PSQLException: A tentativa de conexão falhou. A tentativa de conexão falhou.
wbdsjunior

bruce1010:
... String url = "jdbc:postgresql://localhost:8081/agenda_telefone?user=root&password=administrador"; ...

A porta do banco de dados está correta? É 8081 memo? Essa não é a porta do seu servidor de aplicações, não?

O porta padrão para o PostgreSQL é 5432. Você alterou isso em algum momento?

B
Criado 18 de junho de 2013
Ultima resposta 19 de jun. de 2013
Respostas 5
Participantes 4