Conexão Postgres JDBC em Eclipse Help

votos
10

Eu estou tentando obter uma conexão postgres jdbc trabalhando em eclipse. Seria bom usar o Data Source Explorer, mas por agora estou apenas tentando obter uma conexão básica. O que tenho feito até agora é baixar o conector Postgres JDBC. Então eu tentei duas coisas diferentes. Primeiro, Preferências> Gerenciamento de Dados, eu tentei adicionar o conector postgres. Em segundo lugar, eu adicionei o frasco para meu projeto e tentou carregar o driver usando Class.forName ( org.postgresql.Driver); mas também não funcionou. Alguém tem alguma idéia?

Obrigado, Charlie

Publicado 14/10/2008 em 03:02
fonte usuário
Em outras línguas...                            


5 respostas

votos
-1

Aqui está uma maneira de obter conectividade PostgreSQL para sua aplicação:

  1. Obter uma instância de org.postgresql.ds.PGSimpleDataSource
  2. Setup com valores correspondentes ao seu banco de dados (ver métodos abaixo)
  3. Prossiga usando a fonte de dados como você usaria qualquer outro, eu diria que neste momento você estaria interessado no DataSource.getConnection()método.

Os métodos patenteados para configurar esta fonte de dados em particular são setServerName(), setDatabaseName(), setUser()e setPassword().

Eu não recomendo fazer isso por qualquer outra coisa do que o teste embora e que é possível o seu problema reside na forma como você está tentando obter uma instância do objeto usando Class.forName()Há quase uma dúzia de maneiras diferentes para obter uma instância de um objeto com diferenças sutis , sugiro Googling para ele, pois é um assunto que muitas pessoas já têm escrito sobre toda a Internet.

Respondeu 17/10/2008 em 10:08
fonte usuário

votos
20

Isto é como eu ter feito uma conexão: (. Eu não sei se este é "melhor prática", mas funciona)

Importando o motorista:

  1. clique direito em seu projeto
  2. Escolha propriedade
  3. Escolher Java build path
  4. Escolha Add external JARS..e selecione o local para o driver JDBC.

Aqui está o meu código:

try{
    Class.forName("org.postgresql.Driver");
    } catch (ClassNotFoundException cnfe){
      System.out.println("Could not find the JDBC driver!");
      System.exit(1);
    }
Connection conn = null;
try {
    conn = DriverManager.getConnection
                   (String url, String user, String password);
     } catch (SQLException sqle) {
       System.out.println("Could not connect");
       System.exit(1);
     }

A URL pode ser de um dos seguintes formatos:

jdbc:postgresql:database
jdbc:postgresql://host/database
jdbc:postgresql://host:port/database
Respondeu 18/10/2008 em 09:25
fonte usuário

votos
1

Eu tive o mesmo problema usando GWT.

Eu fixo-lo, copiando o arquivo jar dentro da pasta "lib": (Project \ war \ WEB-INF \ lib). Quando você adiciona um frasco no caminho de construção parece fazer o link estaticamente, no entanto queremos que o lib em tempo de execução!

Espero que isso resolve o seu problema.

Respondeu 15/12/2009 em 14:40
fonte usuário

votos
2

Eu também estava tendo esse problema também e resposta de Vjeux ajudou a me aponte na direção certa.

Eu tenho uma cópia local do Tomcat6 que foi instalado e é gerido pelo Eclipse. Foi instalado em '$ HOME / bin / tomcat6'. Para obter o driver PostgreSQL JDBC trabalhar eu simplesmente copiado meu arquivo postgresql.jar no '$ HOME / bin / tomcat6 / lib' diretório.

Além disso, se você não sabe onde obter o controlador a partir, em primeiro lugar, tente isso. Estou correndo Ubuntu então eu corri 'sudo apt-get install libpg-java', que instalou o controlador em '/usr/share/java/postgresql.jar' e então eu apenas copiou-lo de lá.

Respondeu 23/09/2010 em 01:35
fonte usuário

votos
0

você pode escrever esse código em persistence.xml

      <property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver"/>
        <property name="javax.persistence.jdbc.url" value="jdbc:postgresql://localhost:5432/yourDataBaseName"/>
        <property name="javax.persistence.jdbc.user" value="postgres"/>
        <property name="javax.persistence.jdbc.password" value="yourPassword"/>
Respondeu 23/02/2013 em 20:10
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more